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

Disassembly:
sub esp, 0x7c
mov eax, dword [0x803100]
xor eax, esp
mov dword [esp + 0x78], eax
mov edx, dword [esp + 0x80]
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 0x88]
push ebx
mov ebx, dword [esp + 0x90]
push ebp
mov ebp, dword [esp + 0x8c]
add eax, ebp
push esi
lea esi, [ecx + ebx]
mov dword [esp + 0x14], ebx
mov dword [esp + 0x20], esi
mov ebx, ebp
push edi
mov edi, dword [edx + 0x2850]
lea esi, [edx + 0x1004]
mov dword [esp + 0x2c], esi
mov esi, dword [edx + 0x2810]
push ecx
mov dword [esp + 0x44], esi
lea ecx, [edx + 0x1004]
mov esi, dword [edx + 0x2814]
mov dword [esp + 0x40], esi
mov esi, dword [edx + 0x2818]
mov dword [esp + 0x20], eax
lea eax, [edx + 0x1808]
mov dword [esp + 0x3c], esi
mov esi, dword [esp + 0x1c]
push esi
push ecx
push eax
mov dword [esp + 0x40], eax
lea eax, [esp + 0x30]
push edx
push eax
lea eax, [esp + 0x30]
mov dword [esp + 0x5c], ebp
mov ebp, dword [edx + 0x2854]
push eax
lea eax, [esp + 0x50]
mov dword [esp + 0x44], edx
add ebp, edi
mov dword [esp + 0x2c], edi
push eax
mov dword [esp + 0x34], ebp
call fcn.0063cfa0
add esp, 0x20
cmp eax, 0xffffff88
ja 0x63d866
push 0xc
add esi, eax
lea eax, [esp + 0x80]
push 0
push eax
call fcn.0064ad90
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x2c]
add eax, ecx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x30]
push 4
pop edx
sub eax, esi
mov dword [esp + 0x8c], edx
push eax
lea eax, [esp + 0x58]
mov dword [esp + 0x80], edx
push esi
push eax
call fcn.00638088
add esp, 0x18
cmp eax, 0xffffff88
ja 0x63d863
push dword [esp + 0x28]
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x60]
push eax
call fcn.0063875e
push dword [esp + 0x38]
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x74]
push eax
call fcn.0063875e
push dword [esp + 0x48]
lea eax, [esp + 0x64]
push eax
lea eax, [esp + 0x88]
push eax
call fcn.0063875e
lea eax, [esp + 0x6c]
push eax
call fcn.00636ca1
add esp, 0x28
cmp eax, 2
jg 0x63d822
mov ebp, dword [esp + 0x34]
test ebp, ebp
je 0x63d81a
lea eax, [esp + 0x48]
dec ebp
push eax
lea eax, [esp + 0x80]
push eax
call fcn.0063d247
pop ecx
pop ecx
push dword [esp + 0x38]
lea eax, [esp + 0x14]
push dword [esp + 0x40]
lea esi, [esp + 0x84]
push dword [esp + 0x48]
push dword [esp + 0x20]
push eax
sub esp, 0xc
mov edi, esp
push dword [esp + 0x3c]
movsd dword es:[edi], dword [esi]
push ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0063da14
add esp, 0x28
cmp eax, 0xffffff88
ja 0x63d866
add ebx, eax
lea eax, [esp + 0x48]
push eax
call fcn.00636ca1
pop ecx
cmp eax, 2
jle 0x63d7b9
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
lea eax, [esp + 0x48]
push eax
call fcn.0062cb45
pop ecx
test eax, eax
je 0x63d863
mov eax, ebp
sub eax, edi
cmp edi, ebp
ja 0x63d863
lea esi, [eax + ebx]
cmp esi, dword [esp + 0x1c]
jbe 0x63d846
push 0xffffffffffffffba
jmp 0x63d865
test eax, eax
je 0x63d85b
cmp ebx, edi
je 0x63d859
push eax
push edi
push ebx
call fcn.0064a810
add esp, 0xc
mov ebx, esi
sub ebx, dword [esp + 0x44]
mov eax, ebx
jmp 0x63d866
push 0xffffffffffffffec
pop eax
mov ecx, dword [esp + 0x88]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00649c68
add esp, 0x7c
ret