Function at 0x4f949c
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffa8
push ebx
xor ebx, ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x4fa203
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x28]
cmp eax, 0x59
jge 0x4f9516
xor eax, eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0xe
jge 0x4f9504
inc dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x28], eax
mov eax, dword [0x5339d0]
mov dword [0x533864], eax
jmp 0x4f94fe
cmp dword [ebp - 0x2c], 0xe
jl 0x4f94e1
mov eax, dword [0x533864]
add eax, dword [0x5339e0]
mov dword [0x5338ec], eax
jmp 0x4f9525
mov eax, dword [0x533a00]
add eax, 0xe2
mov dword [0x533964], eax
mov eax, dword [0x5339f8]
sub eax, 0x47
mov dword [0x5339d0], eax
mov eax, dword [0x5338ec]
push eax
mov ecx, dword [ebp - 0x28]
mov edx, dword [0x5338ac]
mov eax, dword [0x533874]
call fcn.004f8894
mov dword [0x533a38], eax
mov eax, dword [0x5339e8]
sub eax, dword [0x5338cc]
mov dword [0x533a38], eax
mov eax, dword [0x533984]
mov dword [0x533a48], eax
mov eax, dword [0x533934]
mov dword [0x53385c], eax
mov eax, dword [0x533a48]
cmp eax, dword [0x53385c]
jle 0x4f958c
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 0x14]
call fcn.0040a01c
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 4]
mov dword [ebp - 0x38], eax
mov eax, dword [0x53386c]
add eax, 0x71
mov dword [0x533984], eax
mov eax, dword [0x5338f4]
add eax, 9
mov dword [0x5339d8], eax
mov eax, dword [ebp - 0x28]
push eax
mov eax, dword [0x5338b4]
push eax
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x28]
mov eax, dword [0x533984]
call fcn.004f847c
mov dword [0x5338cc], eax
fild dword [0x5338a4]
call fcn.00407638
mov dword [0x533a48], eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
xor edx, edx
add edx, 0x18
add eax, edx
mov edx, dword [ebp - 0x48]
movzx edx, word [edx + 0x14]
add eax, edx
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
movzx eax, word [eax + 6]
dec eax
test eax, eax
jl 0x4fa10d
inc eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x30], 0
mov eax, dword [0x53387c]
sub eax, dword [0x5339d0]
mov dword [0x5339c4], eax
fild dword [0x533904]
call fcn.0040762c
mov dword [0x533a08], eax
lea eax, [ebp - 0x24]
mov edx, dword [ebp - 0x18]
call fcn.0040a01c
mov eax, dword [0x5339c4]
sub eax, 0x96
mov dword [0x533a48], eax
lea eax, [ebp - 0x14]
mov edx, 0x4fa220
call fcn.0040a01c
mov eax, dword [0x5339bc]
sub eax, dword [0x53394c]
mov dword [0x53389c], eax
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0x10], 0
jne 0x4f9bd3
mov eax, dword [0x53389c]
mov dword [0x533984], eax
fild dword [0x533934]
call fcn.00407638
mov dword [0x5339d8], eax
mov eax, dword [0x53388c]
mov dword [0x5339f8], eax
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x24]
call fcn.0040aba0
jne 0x4f96bb
mov eax, dword [0x5338cc]
add eax, 0x59
mov dword [0x533a50], eax
mov eax, dword [ebp - 0x28]
sub eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x28]
jge 0x4f96e2
mov eax, dword [0x5339d0]
add eax, 0xef
mov dword [ebp - 0x58], eax
fild dword [ebp - 0x58]
call fcn.0040762c
mov dword [0x5338cc], eax
jmp 0x4f96f2
mov eax, dword [0x533964]
add eax, dword [0x533a18]
mov dword [0x53393c], eax
mov eax, dword [0x53397c]
call fcn.004071f4
mov dword [0x53397c], eax
mov eax, dword [0x53397c]
cmp eax, dword [0x5339f8]
jge 0x4f973d
mov eax, 0x59
sub eax, dword [0x5338c4]
cmp eax, 0xf1
jge 0x4f9731
mov eax, dword [0x5338e4]
sub eax, 0xe9
mov dword [0x533a28], eax
jmp 0x4f974d
mov eax, dword [0x53398c]
mov dword [0x533864], eax
jmp 0x4f974d
mov eax, dword [0x53388c]
imul dword [0x5339d0]
mov dword [0x5338dc], eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x34], eax
mov eax, dword [0x533a18]
add eax, dword [0x5339d8]
cmp eax, dword [0x5339d8]
jne 0x4f97fe
xor eax, eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jge 0x4f97dd
inc dword [ebp - 0x2c]
mov ecx, 1
mov edx, dword [0x533a20]
mov eax, 0x4fa2b8
call fcn.0040ade8
cmp eax, 0xd5
je 0x4f97b5
mov eax, dword [0x5338a4]
add eax, 0xa8
mov dword [0x5338b4], eax
mov eax, dword [0x5338e4]
add eax, 0xa6
mov dword [0x5338f4], eax
mov eax, dword [0x533894]
add eax, dword [0x5339d0]
mov dword [0x533974], eax
mov eax, dword [0x5338d4]
sub eax, dword [0x533934]
mov dword [0x5339d0], eax
jmp 0x4f97dd
mov eax, dword [0x533a38]
sub eax, 0xa0
mov dword [0x533a50], eax
mov eax, dword [0x533a28]
sub eax, dword [0x5338bc]
mov dword [0x5338a4], eax
jmp 0x4f980b
mov eax, dword [0x5339bc]
add eax, 4
mov dword [0x533904], eax
mov eax, dword [0x533a08]
mov dword [0x533964], eax
mov eax, dword [0x5338a4]
mov dword [0x5339b4], eax
mov eax, dword [0x533944]
add eax, 4
mov dword [ebp - 0x58], eax
fild dword [ebp - 0x58]
call fcn.00407638
mov dword [0x5339f8], eax
mov eax, dword [0x5338e4]
mov dword [0x533a00], eax
cmp dword [ebp - 0x34], 0
jle 0x4f9b27
push 4
push 0x1000
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0xc]
add eax, dword [ebp - 0x38]
push eax
call dword [0x533980]
mov dword [ebp - 0x3c], eax
mov eax, dword [0x5338bc]
add eax, 0xf6
mov dword [0x533974], eax
mov eax, dword [0x5338fc]
add eax, 0xf4
mov dword [0x5339d0], eax
mov eax, dword [0x5339bc]
add eax, 0x8c
mov dword [0x533a18], eax
mov eax, dword [0x533864]
mov dword [0x53385c], eax
mov eax, dword [0x5339b4]
mov dword [0x533874], eax
cmp dword [ebp - 0x3c], 0
jne 0x4f9975
mov eax, dword [0x5339e0]
add eax, 0xb8
mov dword [ebp - 0x58], eax
fild dword [ebp - 0x58]
call fcn.0040762c
mov dword [0x533974], eax
mov eax, dword [0x5339ac]
call fcn.004071f4
mov dword [0x5339ac], eax
lea eax, [ebp - 0x20]
mov edx, dword [ebp - 0x18]
call fcn.0040a01c
imul eax, dword [0x533974], 0x83
mov dword [0x5339f8], eax
mov eax, dword [0x5339d0]
mov edx, eax
shl eax, 7
add eax, edx
mov dword [0x533a48], eax
mov eax, dword [0x533904]
mov dword [0x53386c], eax
mov byte [ebp - 0xd], 0
jmp 0x4fa1e8
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0xc]
add eax, dword [ebp - 0x38]
mov dword [ebp - 0x3c], eax
imul eax, dword [0x533864], 0x3b
mov dword [0x5339d8], eax
mov eax, dword [0x5338ec]
add eax, 0xd4
mov dword [0x533a28], eax
mov eax, dword [0x5338e4]
add eax, dword [0x53394c]
mov dword [0x53387c], eax
fild dword [0x53393c]
call fcn.00407638
mov dword [0x5338bc], eax
mov eax, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov dword [eax + 8], edx
fild dword [0x533884]
call fcn.0040762c
mov dword [0x5339ac], eax
mov eax, dword [0x5338bc]
add eax, dword [0x5339bc]
mov dword [0x533a00], eax
mov eax, dword [0x5338fc]
sub eax, dword [0x53390c]
mov dword [0x533a50], eax
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
call fcn.0040772c
mov eax, dword [0x53385c]
sub eax, dword [0x5338ac]
mov dword [0x53390c], eax
fild dword [0x5338e4]
call fcn.0040762c
mov dword [0x533964], eax
mov eax, dword [0x533a50]
mov dword [0x53397c], eax
mov eax, dword [0x5339f8]
mov dword [0x53398c], eax
mov eax, dword [0x53398c]
cmp eax, dword [0x53397c]
jge 0x4f9a92
mov eax, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x2c]
sub edx, dword [ebp - 0x28]
cmp eax, edx
jle 0x4f9a64
imul eax, dword [0x533a38], 0x8b
mov dword [0x533a50], eax
jmp 0x4f9a74
mov eax, dword [0x5339d0]
imul dword [0x5339d0]
mov dword [0x5338b4], eax
mov eax, dword [0x533964]
shl eax, 5
mov dword [0x53392c], eax
mov eax, dword [0x533a18]
add eax, 0xb8
mov dword [0x533964], eax
jmp 0x4f9aff
mov eax, dword [0x533a08]
mov dword [0x5339d0], eax
mov eax, dword [0x5339d0]
cmp eax, dword [0x53397c]
jge 0x4f9ab8
mov eax, dword [0x533944]
add eax, 0x4d
mov dword [0x533a50], eax
jmp 0x4f9ad4
mov eax, dword [0x533a40]
add eax, 0xe4
mov dword [0x5338cc], eax
mov eax, dword [0x533884]
add eax, 4
mov dword [0x53392c], eax
mov eax, dword [0x533a30]
sub eax, dword [0x533934]
mov dword [0x53398c], eax
mov eax, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x2c]
jge 0x4f9aff
mov eax, dword [0x5338b4]
add eax, dword [0x533a18]
mov dword [0x533a48], eax
imul eax, dword [0x533a00], 0xda
mov dword [0x5338b4], eax
mov eax, dword [0x533944]
mov dword [0x5338d4], eax
imul eax, dword [0x533a50], 0xd8
mov dword [0x5338fc], eax
mov eax, dword [0x5339f8]
call fcn.004071f4
mov dword [0x5339f8], eax
mov eax, dword [0x5339f8]
call fcn.004071f4
mov dword [0x5339f8], eax
mov eax, dword [0x5339f8]
cmp eax, dword [0x5339f8]
jge 0x4f9b87
xor eax, eax
mov dword [ebp - 0x2c], eax
mov eax, dword [0x53385c]
call fcn.004071f4
mov dword [0x53385c], eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xf
jne 0x4f9b57
mov eax, dword [0x53396c]
add eax, 0x36
mov dword [ebp - 0x58], eax
fild dword [ebp - 0x58]
call fcn.0040762c
mov dword [0x5338ac], eax
mov eax, dword [0x533a28]
mov dword [0x5338e4], eax
mov eax, dword [0x5338ac]
sub eax, dword [0x533a30]
mov dword [0x53392c], eax
mov eax, dword [0x533864]
mov dword [0x53393c], eax
fild dword [0x5338ec]
call fcn.00407638
mov dword [0x533974], eax
imul eax, dword [0x5339ac], 0xfe
mov dword [0x5339c4], eax
add dword [ebp - 0x40], 0x28
jmp 0x4fa101
mov eax, dword [0x5338cc]
imul dword [0x5339f8]
mov dword [0x5338ec], eax
mov eax, dword [0x5338fc]
call fcn.004071f4
mov dword [0x5338fc], eax
mov eax, dword [0x533a38]
mov dword [0x53390c], eax
mov eax, dword [0x53390c]
cmp eax, dword [0x5338fc]
jle 0x4f9c44
mov eax, dword [0x533a28]
shl eax, 3
lea eax, [eax + eax*4]
mov dword [0x53397c], eax
mov eax, dword [0x5339c4]
mov dword [0x533984], eax
mov eax, dword [0x53386c]
add eax, dword [0x5338cc]
mov dword [0x5339d8], eax
imul eax, dword [0x5338f4], 0xbf
mov dword [0x533a28], eax
jmp 0x4f9c4e
mov eax, dword [0x5339b4]
mov dword [0x53385c], eax
lea eax, [ebp - 0x14]
mov edx, 0x4fa2dc
call fcn.0040a01c
mov eax, 0x54
sub eax, dword [0x533a50]
mov dword [0x5338e4], eax
mov eax, dword [0x5338dc]
add eax, 4
mov dword [0x533934], eax
mov eax, dword [0x533a38]
imul dword [0x53394c]
mov dword [0x5339bc], eax
push 4
push 0x1000
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x10]
push eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0xc]
add eax, dword [ebp - 0x38]
push eax
call dword [0x533980]
mov dword [ebp - 0x3c], eax
fild dword [0x533a18]
call fcn.00407638
mov dword [0x5338cc], eax
imul eax, dword [0x5338ac], 0xe2
mov dword [0x533904], eax
mov eax, dword [0x533a08]
mov dword [0x533934], eax
mov eax, dword [0x5338ec]
add eax, dword [0x5339c4]
mov dword [0x533964], eax
imul eax, dword [0x5339ac], 0x79
mov dword [0x5339ac], eax
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x2c]
jle 0x4f9d05
mov eax, dword [0x53388c]
sub eax, 0x10
mov dword [0x533a40], eax
jmp 0x4f9d10
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 0x1c]
call fcn.0040a01c
cmp dword [ebp - 0x3c], 0
jne 0x4f9e99
xor eax, eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 5
jge 0x4f9d8e
inc dword [ebp - 0x2c]
mov eax, dword [0x533a48]
call fcn.004071f4
mov dword [0x533a48], eax
mov eax, dword [0x5338e4]
mov dword [0x533864], eax
mov eax, dword [0x533864]
cmp eax, dword [0x533a48]
jle 0x4f9d5e
mov eax, dword [0x533894]
imul dword [0x5338a4]
mov dword [0x5338c4], eax
mov eax, dword [0x533934]
mov dword [0x5338f4], eax
fild dword [0x5339e0]
call fcn.00407638
mov dword [0x533944], eax
mov eax, dword [0x533a38]
add eax, dword [0x53397c]
mov dword [0x53398c], eax
cmp dword [ebp - 0x2c], 5
jl 0x4f9d25
mov eax, dword [0x53390c]
mov dword [0x5339d0], eax
mov eax, dword [0x5339d0]
add eax, 0x62
mov dword [0x533a18], eax
mov eax, dword [0x533874]
add eax, 0xfa
mov dword [ebp - 0x58], eax
fild dword [ebp - 0x58]
call fcn.0040762c
mov dword [0x53385c], eax
mov eax, dword [0x533864]
sub eax, 0x5f
mov dword [0x5338ac], eax
mov byte [ebp - 0xd], 0
jmp 0x4fa1e8
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0xc]
add eax, dword [ebp - 0x38]
mov dword [ebp - 0x3c], eax
mov eax, dword [0x5338bc]
sub eax, 0xab
mov dword [0x5339c4], eax
mov eax, dword [0x533964]
sub eax, 0x43
mov dword [0x533a08], eax
mov eax, dword [0x5338fc]
mov dword [0x533a28], eax
mov eax, dword [0x533a30]
call fcn.004071f4
mov dword [0x533a30], eax
mov eax, dword [0x533a28]
cmp eax, dword [0x533a30]
jge 0x4f9ef6
mov eax, dword [0x53385c]
call fcn.004071f4
mov dword [0x53385c], eax
mov eax, dword [ebp - 0x28]
sub eax, dword [ebp - 0x2c]
cmp eax, 0xe2
jge 0x4f9f19
mov eax, dword [0x533864]
mov dword [0x533894], eax
mov eax, dword [0x533a08]
mov dword [0x5338a4], eax
jmp 0x4f9f29
mov eax, dword [0x533a00]
add eax, dword [0x533a30]
mov dword [0x5338f4], eax
mov eax, dword [0x5339e8]
add eax, 4
mov dword [ebp - 0x58], eax
fild dword [ebp - 0x58]
call fcn.00407638
mov dword [0x53395c], eax
mov eax, dword [0x533934]
mov dword [0x53397c], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x14]
add eax, dword [ebp - 4]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x50], eax
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
call fcn.00406fb0
mov ecx, 1
mov edx, dword [0x533a20]
mov eax, 0x4fa378
call fcn.0040ade8
cmp eax, 0x96
jge 0x4f9fbb
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 0x14]
call fcn.0040a01c
lea eax, [ebp - 0x14]
push eax
mov ecx, 4
mov edx, 1
mov eax, dword [ebp - 0x24]
call fcn.0040abd8
mov eax, dword [0x533874]
add eax, dword [0x53393c]
mov dword [0x5338bc], eax
mov eax, dword [0x5339bc]
add eax, 0xff
mov dword [0x53393c], eax
mov eax, dword [0x53385c]
imul dword [0x53396c]
mov dword [0x53397c], eax
mov eax, dword [0x5338e4]
imul dword [0x533a40]
mov dword [0x5339d0], eax
fild dword [0x53398c]
call fcn.00407638
mov dword [0x533a08], eax
mov eax, dword [ebp - 0x40]
mov edx, dword [ebp - 0x3c]
mov dword [eax + 8], edx
imul eax, dword [0x53392c], 0xf7
mov dword [0x5338cc], eax
mov eax, dword [0x5339d8]
add eax, 0x8f
mov dword [0x533904], eax
mov eax, dword [0x533974]
mov dword [0x53390c], eax
imul eax, dword [0x533a30], 0x8e
mov dword [0x533964], eax
mov eax, 0x26
sub eax, dword [0x5338bc]
mov dword [0x5339b4], eax
mov eax, dword [0x533914]
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0
je 0x4fa063
mov eax, dword [ebp - 0x54]
sub eax, 4
mov eax, dword [eax]
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0xbe
jne 0x4fa0a6
mov eax, dword [0x5339e0]
call fcn.004071f4
mov dword [0x5339e0], eax
mov eax, dword [0x5339e0]
cmp eax, dword [0x53390c]
jge 0x4fa099
mov eax, dword [0x5339b4]
add eax, 0xbd
mov dword [0x533a48], eax
jmp 0x4fa0b0
lea eax, [ebp - 0x14]
mov edx, dword [ebp - 0x14]
call fcn.0040a01c
jmp 0x4fa0b0
mov eax, dword [0x533a50]
mov dword [0x5338cc], eax
add dword [ebp - 0x40], 0x28
mov eax, dword [0x53392c]
sub eax, 0xb5
mov dword [0x5339d0], eax
mov eax, dword [0x533874]
add eax, 0xe5
mov dword [0x533a50], eax
mov eax, dword [0x533874]
call fcn.004071f4
mov dword [0x533874], eax
mov eax, dword [0x53395c]
imul dword [0x53397c]
mov dword [0x5338cc], eax
mov eax, dword [0x533a08]
imul dword [0x533a48]
mov dword [0x533904], eax
inc dword [ebp - 0x30]
dec dword [ebp - 0x44]
jne 0x4f9619
mov eax, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x28]
sub edx, dword [ebp - 0x28]
cmp eax, edx
jle 0x4fa17b
mov eax, dword [0x5339e0]
call fcn.004071f4
mov dword [0x5339e0], eax
mov eax, dword [0x53398c]
mov dword [0x5339f8], eax
mov eax, dword [0x5339e0]
cmp eax, dword [0x5339f8]
jge 0x4fa16f
xor eax, eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 4
jge 0x4fa1a8
inc dword [ebp - 0x2c]
lea eax, [ebp - 0x14]
push eax
mov ecx, 2
mov edx, 1
mov eax, dword [ebp - 0x1c]
call fcn.0040abd8
cmp dword [ebp - 0x2c], 4
jl 0x4fa14e
jmp 0x4fa1a8
mov eax, dword [0x533a30]
mov dword [0x5338dc], eax
jmp 0x4fa1a8
mov eax, dword [0x533a28]
mov dword [0x533944], eax
mov eax, dword [0x5339c4]
mov dword [0x53395c], eax
mov eax, dword [ebp - 0x28]
push eax
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
mov eax, dword [0x533a50]
call fcn.004f8894
mov dword [0x53392c], eax
lea eax, [ebp - 0x20]
mov edx, 0x4fa394
call fcn.0040a01c
mov eax, dword [0x5339e0]
call fcn.004071f4
mov dword [0x5339e0], eax
fild dword [0x533a08]
call fcn.00407638
mov dword [0x533a18], eax
mov eax, dword [0x53385c]
sub eax, dword [0x5339c4]
mov dword [0x53386c], eax
mov byte [ebp - 0xd], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4fa20a
lea eax, [ebp - 0x24]
mov edx, 5
call fcn.00409c54
ret