Function at 0x5063a8
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x4b29f1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xd4
push ebx
push ebp
push esi
mov ebx, ecx
xor esi, esi
push edi
mov eax, dword [ebx + 0x1584]
mov edi, dword [fcn.004b4824]
push esi
push esi
push 0x1004
push eax
mov dword [esp + 0x68], ebx
mov dword [esp + 0x24], esi
call edi
lea ecx, [esp + 0x10]
mov dword [esp + 0x2c], eax
call fcn.0050d46e
lea ecx, [esp + 0x60]
mov dword [esp + 0xec], esi
call fcn.0050d46e
lea ecx, [ebx + 0xc5c]
mov byte [esp + 0xec], 1
mov dword [esp + 0x3c], esi
call fcn.004fa858
lea ecx, [esp + 0x70]
mov dword [esp + 0x5c], eax
call fcn.0050d46e
lea ecx, [esp + 0x74]
mov byte [esp + 0xec], 2
call fcn.0050d46e
lea ecx, [esp + 0x78]
mov byte [esp + 0xec], 3
call fcn.0050d46e
lea ecx, [esp + 0x7c]
mov byte [esp + 0xec], 4
call fcn.0050d46e
push 0x4a06b0
push 0x4a06b6
push 6
lea ecx, [esp + 0xc0]
push 4
push ecx
mov byte [esp + 0x100], 5
call fcn.0050dc26
push 0x4d7c40
lea ecx, [esp + 0x74]
mov byte [esp + 0xf0], 6
mov dword [esp + 0x6c], esi
call fcn.0050d47a
mov esi, dword [esp + 0xf4]
xor ecx, ecx
mov eax, dword [esi + 4]
mov edx, eax
test eax, eax
je 0x5064ca
mov ebp, dword [esi + 8]
sub ebp, eax
sar ebp, 2
cmp ecx, ebp
jae 0x5064ca
mov ebp, dword [edx]
cmp dword [ebp + 8], 0
je 0x5064c4
inc dword [esp + 0x14]
inc ecx
add edx, 4
jmp 0x5064a8
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x2c]
cmp eax, edx
je 0x506506
mov eax, dword [ebx + 0x1584]
push 0
push 0
push 0x1004
push eax
call edi
test eax, eax
je 0x5064fe
mov ecx, dword [ebx + 0x1584]
push 0
push 0
push 0x1009
push ecx
call edi
mov dword [esp + 0x3c], 1
mov ecx, dword [esi + 4]
xor ebp, ebp
test ecx, ecx
jne 0x506515
mov dword [esp + 0x34], ecx
jmp 0x506521
mov eax, dword [esi + 8]
sub eax, ecx
sar eax, 2
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x34]
xor ecx, ecx
test eax, eax
mov dword [esp + 0x2c], ecx
jbe 0x506a1f
mov eax, dword [esi + 4]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x14], eax
mov edx, dword [eax + 8]
test edx, edx
je 0x506a0e
mov edx, dword [eax + 0x28]
lea eax, [esp + 0x10]
push edx
push 0x4ce1a8
push eax
call fcn.0050d5e2
mov eax, dword [esp + 0x48]
add esp, 0xc
test eax, eax
lea edi, [ebx + 0x1564]
push 0
je 0x50658b
mov ecx, dword [esp + 0x14]
push 0
push 0
push 0
push ecx
push ebp
push 1
mov ecx, edi
call fcn.0050d822
mov esi, dword [fcn.004b46f0]
jmp 0x5065d2
lea edx, [esp + 0x68]
push ebp
push edx
mov ecx, edi
call fcn.0050d972
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
mov esi, dword [fcn.004b46f0]
push ecx
push eax
call esi
add esp, 8
lea ecx, [esp + 0x64]
test eax, eax
setne byte [esp + 0x1f]
call fcn.0050d468
mov al, byte [esp + 0x1f]
test al, al
je 0x5065d2
mov edx, dword [esp + 0x10]
mov ecx, edi
push edx
push 0
push ebp
call fcn.0050d816
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
push ecx
lea ecx, [ebx + 0xc5c]
mov dword [esp + 0x3c], ecx
call fcn.004c9598
test eax, eax
mov dword [esp + 0x20], eax
jne 0x5065fa
lea edx, [esp + 0x68]
mov dword [esp + 0x20], edx
mov eax, edx
add eax, 8
lea ecx, [esp + 0x10]
push eax
call fcn.0050d5e8
push 1
lea eax, [esp + 0x44]
push ebp
push eax
mov ecx, edi
call fcn.0050d972
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
push ecx
push eax
call esi
add esp, 8
lea ecx, [esp + 0x40]
test eax, eax
setne bl
call fcn.0050d468
test bl, bl
je 0x506644
mov edx, dword [esp + 0x10]
mov ecx, edi
push edx
push 1
push ebp
call fcn.0050d816
mov edx, dword [esp + 0x20]
cmp dword [edx], 0
je 0x506676
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x2c]
test eax, eax
je 0x506676
mov ebx, dword [ecx + 0xc]
test ebx, ebx
je 0x50666f
lea eax, [edx + eax*4 + 0x48]
lea ecx, [esp + 0x10]
push eax
call fcn.0050d5e8
jmp 0x506684
push 0x4d0b90
jmp 0x50667b
push 0x4d189c
lea ecx, [esp + 0x14]
call fcn.0050d47a
push 2
lea ecx, [esp + 0x58]
push ebp
push ecx
mov ecx, edi
call fcn.0050d972
mov edx, dword [esp + 0x10]
mov eax, dword [eax]
push edx
push eax
call esi
add esp, 8
lea ecx, [esp + 0x54]
test eax, eax
setne bl
call fcn.0050d468
test bl, bl
je 0x5066c1
mov eax, dword [esp + 0x10]
mov ecx, edi
push eax
push 2
push ebp
call fcn.0050d816
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x28], 0
cmp dword [ecx], 0
je 0x5067b2
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x1c]
test edx, edx
jne 0x5066ee
mov edx, dword [esp + 0xf4]
mov edx, dword [edx + 0x108]
mov eax, dword [ecx + 0x18]
mov esi, dword [esp + 0x38]
add eax, edx
push ecx
mov ecx, esi
mov dword [esp + 0x28], eax
call fcn.004e39f8
test eax, eax
je 0x506730
mov eax, dword [esp + 0xf4]
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
mov eax, dword [eax + 0x108]
mov dword [ecx], eax
lea ecx, [esp + 0x28]
call fcn.0049cfe8
mov dword [esp + 0x28], 1
jmp 0x506749
mov ecx, esi
call fcn.004fa858
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
mov dword [ecx], eax
lea ecx, [esp + 0x28]
call fcn.0049cfe8
mov ecx, dword [esp + 0x24]
test ecx, ecx
jge 0x506757
xor ecx, ecx
mov dword [esp + 0x24], ecx
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x91a2b3c5
mov esi, edx
imul ecx
add edx, ecx
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [esi + esi*2]
lea eax, [eax + eax*4]
shl eax, 2
sub ecx, eax
lea eax, [edx + edx*2]
push ecx
lea ecx, [eax + eax*4]
shl ecx, 2
sub esi, ecx
push esi
push edx
lea edx, [esp + 0x1c]
push 0x4d2bf8
push edx
call fcn.0050d5e2
mov esi, dword [fcn.004b46f0]
add esp, 0x14
jmp 0x5067c0
push 0x4d189c
lea ecx, [esp + 0x14]
call fcn.0050d47a
push 3
lea eax, [esp + 0x50]
push ebp
push eax
mov ecx, edi
call fcn.0050d972
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
push ecx
push eax
call esi
add esp, 8
lea ecx, [esp + 0x4c]
test eax, eax
setne bl
call fcn.0050d468
test bl, bl
je 0x5067fd
mov edx, dword [esp + 0x10]
mov ecx, edi
push edx
push 3
push ebp
call fcn.0050d816
mov eax, dword [esp + 0x20]
cmp dword [eax], 0
je 0x5068f8
mov edx, dword [esp + 0x14]
cmp dword [edx + 0x2c], 6
je 0x5068f8
mov ecx, dword [edx + 0x1c]
test ecx, ecx
jne 0x50682c
mov ecx, dword [esp + 0xf4]
mov ecx, dword [ecx + 0x108]
mov eax, dword [eax + 0x1c]
mov esi, dword [edx + 0x14]
sub eax, esi
add eax, ecx
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x28]
test eax, eax
je 0x506867
mov edx, dword [esp + 0xf4]
mov eax, dword [esp + 0x5c]
push ecx
mov esi, dword [edx + 0x108]
mov ecx, esp
sub eax, esi
mov dword [esp + 0x34], esp
mov dword [ecx], eax
lea ecx, [esp + 0x1c]
call fcn.00506ac8
push 0
lea ecx, [esp + 0x1c]
call fcn.0050d810
mov ebx, dword [eax]
push 0
lea ecx, [esp + 0x1c]
call fcn.0050d810
mov eax, dword [eax + 4]
push 0
lea ecx, [esp + 0x1c]
mov dword [esp + 0x3c], eax
call fcn.0050d810
mov ecx, dword [eax + 8]
push 0
mov dword [esp + 0x2c], ecx
lea ecx, [esp + 0x1c]
call fcn.0050d810
mov edx, dword [eax + 0xc]
push 0
lea ecx, [esp + 0x1c]
mov dword [esp + 0x34], edx
call fcn.0050d810
mov esi, dword [eax + 0x10]
push 0
lea ecx, [esp + 0x1c]
inc esi
call fcn.0050d810
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x28]
mov eax, dword [eax + 0x14]
push ebx
push ecx
mov ecx, dword [esp + 0x38]
push edx
add eax, 0x76c
push ecx
push esi
push eax
lea edx, [esp + 0x28]
push 0x4d4a8c
push edx
call fcn.0050d5e2
mov esi, dword [fcn.004b46f0]
add esp, 0x20
jmp 0x506906
push 0x4d189c
lea ecx, [esp + 0x14]
call fcn.0050d47a
push 4
lea eax, [esp + 0x48]
push ebp
push eax
mov ecx, edi
call fcn.0050d972
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
push ecx
push eax
call esi
add esp, 8
lea ecx, [esp + 0x44]
test eax, eax
setne bl
call fcn.0050d468
test bl, bl
je 0x506943
mov edx, dword [esp + 0x10]
mov ecx, edi
push edx
push 4
push ebp
call fcn.0050d816
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
mov ecx, dword [eax + 0xc]
mov eax, dword [edx + 0x34]
push ecx
push eax
lea ecx, [esp + 0x18]
push 0x4d7c38
push ecx
call fcn.0050d5e2
add esp, 0x10
lea edx, [esp + 0x48]
mov ecx, edi
push 5
push ebp
push edx
call fcn.0050d972
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
push ecx
push eax
call esi
add esp, 8
lea ecx, [esp + 0x48]
test eax, eax
setne bl
call fcn.0050d468
test bl, bl
je 0x5069a2
mov edx, dword [esp + 0x10]
mov ecx, edi
push edx
push 5
push ebp
call fcn.0050d816
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x24]
mov eax, 0x4d18c4
test ecx, ecx
jne 0x5069b7
mov eax, 0x4d18c0
push eax
lea ecx, [esp + 0x14]
call fcn.0050d47a
push 6
lea ecx, [esp + 0x54]
push ebp
push ecx
mov ecx, edi
call fcn.0050d972
mov edx, dword [esp + 0x10]
mov eax, dword [eax]
push edx
push eax
call esi
add esp, 8
lea ecx, [esp + 0x50]
test eax, eax
setne bl
call fcn.0050d468
test bl, bl
je 0x5069fe
mov eax, dword [esp + 0x10]
mov ecx, edi
push eax
push 6
push ebp
call fcn.0050d816
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x58]
mov esi, dword [esp + 0xf4]
inc ebp
mov eax, dword [esp + 0x34]
inc ecx
cmp ecx, eax
mov dword [esp + 0x2c], ecx
jb 0x506533
push 0x4a06b0
push 6
lea ecx, [esp + 0xbc]
push 4
push ecx
mov byte [esp + 0xfc], 0xa
call fcn.0050db32
lea ecx, [esp + 0x7c]
mov byte [esp + 0xec], 9
call fcn.0050d468
lea ecx, [esp + 0x78]
mov byte [esp + 0xec], 8
call fcn.0050d468
lea ecx, [esp + 0x74]
mov byte [esp + 0xec], 7
call fcn.0050d468
lea ecx, [esp + 0x70]
mov byte [esp + 0xec], 1
call fcn.0050d468
lea ecx, [esp + 0x60]
mov byte [esp + 0xec], 0
call fcn.0050d468
lea ecx, [esp + 0x10]
mov dword [esp + 0xec], 0xffffffff
call fcn.0050d468
mov ecx, dword [esp + 0xe4]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0xe0
ret 4