Function at 0x4dee51
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x4c
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x50], 0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
cmp eax, 3
jg 0x4dee76
mov eax, 0
jmp 0x4dfcd9
mov eax, dword [ebp + 8]
mov eax, dword [eax]
movzx eax, byte [eax]
movzx eax, al
and eax, 0xdf
cmp eax, 0x43
je 0x4dee95
mov eax, 0
jmp 0x4dfcd9
mov eax, dword [ebp + 8]
mov eax, dword [eax]
add eax, 1
movzx eax, byte [eax]
movzx eax, al
and eax, 0xdf
cmp eax, 0x4f
je 0x4deeb7
mov eax, 0
jmp 0x4dfcd9
mov eax, dword [ebp + 8]
mov eax, dword [eax]
add eax, 2
movzx eax, byte [eax]
movzx eax, al
and eax, 0xdf
cmp eax, 0x4d
je 0x4deed9
mov eax, 0
jmp 0x4dfcd9
mov dword [0xa7f11c], 0xffffffff
mov dword [0xa7f120], 3
jmp 0x4def8a
mov eax, dword [ebp + 8]
mov edx, dword [eax]
mov eax, dword [0xa7f120]
add eax, edx
movzx eax, byte [eax]
movzx eax, al
mov dword [0xa7f124], eax
mov eax, dword [0xa7f124]
cmp eax, 0x3a
je 0x4defaf
mov eax, dword [0xa7f124]
cmp eax, 0x2f
jle 0x4def2b
mov eax, dword [0xa7f124]
cmp eax, 0x39
jle 0x4def35
mov eax, 0
jmp 0x4dfcd9
mov eax, dword [0xa7f11c]
cmp eax, 0xffffffff
jne 0x4def5d
mov eax, dword [0xa7f124]
cmp eax, 0x30
jne 0x4def53
mov eax, 0
jmp 0x4dfcd9
mov dword [0xa7f11c], 0
mov edx, dword [0xa7f11c]
mov eax, edx
shl eax, 2
add eax, edx
add eax, eax
mov edx, eax
mov eax, dword [0xa7f124]
sub eax, 0x30
add eax, edx
mov dword [0xa7f11c], eax
mov eax, dword [0xa7f120]
add eax, 1
mov dword [0xa7f120], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
lea edx, [eax - 1]
mov eax, dword [0xa7f120]
cmp edx, eax
setg al
test al, al
jne 0x4deef2
mov eax, 0
jmp 0x4dfcd9
nop
mov eax, dword [0xa7f128]
cmp eax, 6
jg 0x4defcf
mov eax, dword [0xa7f11c]
test eax, eax
jle 0x4defcf
mov eax, dword [0xa7f11c]
cmp eax, 0xff
jle 0x4defd9
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f11c]
mov edx, eax
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x50], dl
mov eax, dword [0xa7f12c]
test eax, eax
jne 0x4df008
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004ac3ce
mov dword [0xa7f12c], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
call fcn.004acdc6
mov edx, eax
mov eax, dword [0xa7f12c]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004ac535
mov edx, dword [0xa7f12c]
mov eax, dword [edx + 4]
sub eax, 1
mov dword [edx + 4], eax
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x54], 0xffffffff
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x58], 0xff
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x59], 0xff
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5a], 0xff
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5d], 0xff
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5b], 0xff
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5c], 0xff
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x60], 0xffffffff
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x64], 0xffffffff
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x68], 0xffffffff
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x6c], 0xffffffff
mov dword [0xa7f130], 0
mov dword [0xa7f134], 0
mov dword [0xa7f138], 1
mov dword [0xa7f13c], 1
mov dword [0xa7f140], 0
mov dword [0xa7f144], 0
mov dword [0xa7f11c], 0xffffffff
mov eax, dword [0xa7f120]
add eax, 1
mov dword [0xa7f120], eax
jmp 0x4dfb38
mov eax, dword [0xa7f12c]
mov edx, dword [eax]
mov eax, dword [0xa7f120]
add eax, edx
movzx eax, byte [eax]
movzx eax, al
mov dword [0xa7f124], eax
mov eax, dword [0xa7f124]
cmp eax, 0x2c
je 0x4df3ba
mov eax, dword [0xa7f124]
cmp eax, 0x2f
jle 0x4df138
mov eax, dword [0xa7f124]
cmp eax, 0x39
jle 0x4df12e
mov eax, dword [0xa7f124]
cmp eax, 0x40
jle 0x4df138
mov eax, dword [0xa7f124]
cmp eax, 0x5a
jle 0x4df142
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f13c]
cmp eax, 2
jne 0x4df160
mov eax, dword [0xa7f124]
cmp eax, 0x40
jle 0x4df160
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f124]
cmp eax, 0x40
jg 0x4df174
mov dword [0xa7f13c], 2
mov eax, dword [0xa7f13c]
cmp eax, 1
je 0x4df18c
mov eax, dword [0xa7f138]
cmp eax, 4
jne 0x4df317
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
and ecx, 0xff0000
mov dword [ebp - 0x20], ecx
mov ebx, edx
and ebx, 0
mov dword [ebp - 0x1c], ebx
mov eax, dword [ebp - 0x1c]
or eax, dword [ebp - 0x20]
test eax, eax
je 0x4df1f8
mov eax, dword [0xa7f124]
shl eax, 0x18
mov dword [ebp - 0x48], eax
mov edx, eax
sar edx, 0x1f
mov dword [ebp - 0x44], edx
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, dword [ebp - 0x48]
or ecx, eax
mov dword [ebp - 0x28], ecx
mov ebx, dword [ebp - 0x44]
or ebx, edx
mov dword [ebp - 0x24], ebx
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov dword [0xa7f140], eax
mov dword [0xa7f144], edx
jmp 0x4df2eb
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
and ecx, 0xff00
mov dword [ebp - 0x30], ecx
mov ebx, edx
and ebx, 0
mov dword [ebp - 0x2c], ebx
mov eax, dword [ebp - 0x2c]
or eax, dword [ebp - 0x30]
test eax, eax
je 0x4df264
mov eax, dword [0xa7f124]
shl eax, 0x10
mov dword [ebp - 0x48], eax
mov edx, eax
sar edx, 0x1f
mov dword [ebp - 0x44], edx
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, dword [ebp - 0x48]
or ecx, eax
mov dword [ebp - 0x38], ecx
mov ebx, dword [ebp - 0x44]
or ebx, edx
mov dword [ebp - 0x34], ebx
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp - 0x34]
mov dword [0xa7f140], eax
mov dword [0xa7f144], edx
jmp 0x4df2eb
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
movzx esi, al
mov edi, edx
and edi, 0
mov eax, edi
or eax, esi
test eax, eax
je 0x4df2c0
mov eax, dword [0xa7f124]
shl eax, 8
mov dword [ebp - 0x48], eax
mov edx, eax
sar edx, 0x1f
mov dword [ebp - 0x44], edx
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, dword [ebp - 0x48]
or ecx, eax
mov dword [ebp - 0x40], ecx
mov ebx, dword [ebp - 0x44]
or ebx, edx
mov dword [ebp - 0x3c], ebx
mov eax, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov dword [0xa7f140], eax
mov dword [0xa7f144], edx
jmp 0x4df2eb
mov eax, dword [0xa7f124]
mov edx, eax
sar edx, 0x1f
mov dword [0xa7f140], eax
mov dword [0xa7f144], edx
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov dword [0xa7f140], eax
mov dword [0xa7f144], edx
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
test edx, edx
js 0x4df3ba
test edx, edx
jg 0x4df30d
cmp eax, 0x1000000
jbe 0x4df3ba
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f124]
cmp eax, 0x30
jle 0x4df375
mov eax, dword [0xa7f124]
cmp eax, 0x39
jg 0x4df375
mov eax, dword [0xa7f11c]
cmp eax, 0xfffffffe
jne 0x4df33f
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f11c]
cmp eax, 0xffffffff
jne 0x4df353
mov dword [0xa7f11c], 0
mov edx, dword [0xa7f11c]
mov eax, edx
shl eax, 2
add eax, edx
add eax, eax
mov edx, eax
mov eax, dword [0xa7f124]
sub eax, 0x30
add eax, edx
mov dword [0xa7f11c], eax
jmp 0x4df3ba
mov eax, dword [0xa7f11c]
cmp eax, 0xfffffffe
jne 0x4df389
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f11c]
cmp eax, 0xffffffff
jne 0x4df39d
mov dword [0xa7f11c], 0xfffffffe
mov eax, dword [0xa7f11c]
test eax, eax
jle 0x4df3ba
mov edx, dword [0xa7f11c]
mov eax, edx
shl eax, 2
add eax, edx
add eax, eax
mov dword [0xa7f11c], eax
mov eax, dword [0xa7f124]
cmp eax, 0x2c
je 0x4df3dc
mov eax, dword [0xa7f12c]
mov eax, dword [eax + 4]
lea edx, [eax - 1]
mov eax, dword [0xa7f120]
cmp edx, eax
jne 0x4dfb2b
mov eax, dword [0xa7f11c]
cmp eax, 0xfffffffe
jne 0x4df3f0
mov dword [0xa7f11c], 0
mov eax, dword [0xa7f138]
cmp eax, 1
jne 0x4df46f
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x54]
cmp eax, 0xffffffff
je 0x4df40f
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
or eax, edx
test eax, eax
je 0x4df42a
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f11c]
test eax, eax
jne 0x4df43d
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f11c]
cmp eax, 0xffffffff
jne 0x4df451
mov dword [0xa7f11c], 0x12c
mov edx, dword [0xa7f11c]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x54], edx
mov eax, dword [0xa7f138]
add eax, 1
mov dword [0xa7f138], eax
jmp 0x4dfb03
mov eax, dword [0xa7f138]
cmp eax, 2
jne 0x4df5cd
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x58]
cmp al, 0xff
je 0x4df492
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f11c]
cmp eax, 0xffffffff
je 0x4df4a6
mov eax, 0xffffffff
jmp 0x4dfcd9
mov dword [0xa7f128], 0xffffffff
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x4e
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df4d2
mov dword [0xa7f128], 0
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
or eax, edx
test eax, eax
jne 0x4df4ed
mov dword [0xa7f128], 1
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x45
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df50f
mov dword [0xa7f128], 1
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x4f
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df531
mov dword [0xa7f128], 2
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x53
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df553
mov dword [0xa7f128], 3
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x4d
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df575
mov dword [0xa7f128], 4
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x4550
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df59a
mov dword [0xa7f128], 5
mov eax, dword [0xa7f128]
cmp eax, 0xffffffff
jne 0x4df5ae
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f128]
mov edx, eax
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x58], dl
mov eax, dword [0xa7f138]
add eax, 1
mov dword [0xa7f138], eax
jmp 0x4dfb03
mov eax, dword [0xa7f138]
cmp eax, 3
jne 0x4df6ac
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x59]
cmp al, 0xff
je 0x4df5f0
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
or eax, edx
test eax, eax
je 0x4df60b
mov eax, 0xffffffff
jmp 0x4dfcd9
mov dword [0xa7f128], 0xffffffff
mov eax, dword [0xa7f11c]
cmp eax, 0xffffffff
jne 0x4df629
mov dword [0xa7f128], 7
mov eax, dword [0xa7f11c]
cmp eax, 5
jne 0x4df63d
mov dword [0xa7f128], 5
mov eax, dword [0xa7f11c]
cmp eax, 6
jne 0x4df651
mov dword [0xa7f128], 6
mov eax, dword [0xa7f11c]
cmp eax, 7
jne 0x4df665
mov dword [0xa7f128], 7
mov eax, dword [0xa7f11c]
cmp eax, 8
jne 0x4df679
mov dword [0xa7f128], 8
mov eax, dword [0xa7f128]
cmp eax, 0xffffffff
jne 0x4df68d
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f128]
mov edx, eax
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x59], dl
mov eax, dword [0xa7f138]
add eax, 1
mov dword [0xa7f138], eax
jmp 0x4dfb03
mov eax, dword [0xa7f138]
cmp eax, 4
jne 0x4df7ce
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x5a]
cmp al, 0xff
je 0x4df6cf
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f11c]
cmp eax, 0xffffffff
je 0x4df6e3
mov eax, 0xffffffff
jmp 0x4dfcd9
mov dword [0xa7f128], 0xffffffff
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
or eax, edx
test eax, eax
jne 0x4df732
mov dword [0xa7f128], 0xa
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x54]
cmp eax, 0x6e
jg 0x4df732
mov dword [0xa7f128], 0x14
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x59]
cmp al, 5
jne 0x4df732
mov dword [0xa7f128], 0xf
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x31
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df754
mov dword [0xa7f128], 0xa
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x352e31
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df779
mov dword [0xa7f128], 0xf
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x32
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df79b
mov dword [0xa7f128], 0x14
mov eax, dword [0xa7f128]
cmp eax, 0xffffffff
jne 0x4df7af
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f128]
mov edx, eax
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5a], dl
mov eax, dword [0xa7f138]
add eax, 1
mov dword [0xa7f138], eax
jmp 0x4dfb03
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
or eax, edx
test eax, eax
jne 0x4df7e9
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x5352
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df825
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x5d]
cmp al, 0xff
je 0x4df819
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5d], 1
jmp 0x4dfb03
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x4e4942
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df861
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x5b]
cmp al, 0xff
je 0x4df855
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5b], 0
jmp 0x4dfb03
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x435341
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df89d
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x5b]
cmp al, 0xff
je 0x4df891
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5b], 1
jmp 0x4dfb03
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x4254
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df8da
mov eax, dword [0xa7f134]
test eax, eax
je 0x4df8cb
mov eax, 0xffffffff
jmp 0x4dfcd9
mov dword [0xa7f134], 1
jmp 0x4dfb03
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x4252
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df917
mov eax, dword [0xa7f130]
test eax, eax
je 0x4df908
mov eax, 0xffffffff
jmp 0x4dfcd9
mov dword [0xa7f130], 1
jmp 0x4dfb03
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x464c
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df953
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x5c]
cmp al, 0xff
je 0x4df947
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5c], 1
jmp 0x4dfb03
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x4443
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4df9be
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x60]
cmp eax, 0xffffffff
je 0x4df983
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f11c]
cmp eax, 0xffffffff
jne 0x4df997
mov dword [0xa7f11c], 0
mov eax, dword [0xa7f11c]
cmp eax, 0xffff
jle 0x4df9ad
mov eax, 0xffffffff
jmp 0x4dfcd9
mov edx, dword [0xa7f11c]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x60], edx
jmp 0x4dfb03
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x5343
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4dfa29
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x64]
cmp eax, 0xffffffff
je 0x4df9ee
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f11c]
cmp eax, 0xffffffff
jne 0x4dfa02
mov dword [0xa7f11c], 0x3e8
mov eax, dword [0xa7f11c]
cmp eax, 0xffff
jle 0x4dfa18
mov eax, 0xffffffff
jmp 0x4dfcd9
mov edx, dword [0xa7f11c]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x64], edx
jmp 0x4dfb03
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x5344
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4dfa91
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x68]
cmp eax, 0xffffffff
je 0x4dfa59
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f11c]
cmp eax, 0xffffffff
jne 0x4dfa6d
mov dword [0xa7f11c], 0x3e8
mov eax, dword [0xa7f11c]
cmp eax, 0xffff
jle 0x4dfa83
mov eax, 0xffffffff
jmp 0x4dfcd9
mov edx, dword [0xa7f11c]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x68], edx
jmp 0x4dfb03
mov eax, dword [0xa7f140]
mov edx, dword [0xa7f144]
mov ecx, eax
xor ecx, 0x504f
mov eax, ecx
or eax, edx
test eax, eax
jne 0x4dfaf9
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x6c]
cmp eax, 0xffffffff
je 0x4dfac1
mov eax, 0xffffffff
jmp 0x4dfcd9
mov eax, dword [0xa7f11c]
cmp eax, 0xffffffff
jne 0x4dfad5
mov dword [0xa7f11c], 0x2710
mov eax, dword [0xa7f11c]
cmp eax, 0xffff
jle 0x4dfaeb
mov eax, 0xffffffff
jmp 0x4dfcd9
mov edx, dword [0xa7f11c]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x6c], edx
jmp 0x4dfb03
mov eax, 0xffffffff
jmp 0x4dfcd9
mov dword [0xa7f13c], 1
mov dword [0xa7f140], 0
mov dword [0xa7f144], 0
mov dword [0xa7f11c], 0xffffffff
mov eax, dword [0xa7f120]
add eax, 1
mov dword [0xa7f120], eax
mov eax, dword [0xa7f12c]
mov edx, dword [eax + 4]
mov eax, dword [0xa7f120]
cmp edx, eax
setg al
test al, al
jne 0x4df0e9
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x54]
cmp eax, 0xffffffff
jne 0x4dfb67
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x54], 0x12c
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x58]
cmp al, 0xff
jne 0x4dfb79
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x58], 1
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x59]
cmp al, 0xff
jne 0x4dfb8b
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x59], 7
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x5a]
cmp al, 0xff
jne 0x4dfbd7
mov dword [0xa7f128], 0xa
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x54]
cmp eax, 0x6e
jg 0x4dfbca
mov dword [0xa7f128], 0x14
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x59]
cmp al, 5
jne 0x4dfbca
mov dword [0xa7f128], 0xf
mov eax, dword [0xa7f128]
mov edx, eax
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5a], dl
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x5b]
cmp al, 0xff
jne 0x4dfbe9
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5b], 0
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x5c]
cmp al, 0xff
jne 0x4dfbfb
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5c], 0
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x5c]
cmp al, 1
jne 0x4dfc18
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x5b]
test al, al
jne 0x4dfc18
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5c], 0
mov eax, dword [ebp + 0xc]
movzx eax, byte [eax + 0x5d]
cmp al, 0xff
jne 0x4dfc2a
mov eax, dword [ebp + 0xc]
mov byte [eax + 0x5d], 0
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x60]
cmp eax, 0xffffffff
jne 0x4dfc3f
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x60], 0
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x64]
cmp eax, 0xffffffff
jne 0x4dfc54
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x64], 0x3e8
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x68]
cmp eax, 0xffffffff
jne 0x4dfc69
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x68], 0x3e8
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x6c]
cmp eax, 0xffffffff
jne 0x4dfcd7
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 0x60]
mov eax, edx
shl eax, 2
add eax, edx
add eax, eax
mov dword [0xa7f128], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [eax + 0x68]
mov eax, edx
shl eax, 2
add eax, edx
add eax, eax
mov dword [0xa7f148], eax
mov edx, dword [0xa7f148]
mov eax, dword [0xa7f128]
cmp edx, eax
jle 0x4dfcb5
mov eax, dword [0xa7f148]
mov dword [0xa7f128], eax
mov eax, dword [0xa7f128]
cmp eax, 0xffff
jle 0x4dfccb
mov dword [0xa7f128], 0xffff
mov edx, dword [0xa7f128]
mov eax, dword [ebp + 0xc]
mov dword [eax + 0x6c], edx
jmp 0x4dfcd9
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
ret