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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x77ecb7
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x98
push ebx
push esi
mov esi, ecx
mov ecx, dword [0x9922cc]
push edi
xor edi, edi
cmp ecx, edi
mov dword [esp + 0x44], esi
je 0x628a9d
call fcn.0041d3a0
cmp eax, edi
je 0x628a9d
mov ecx, dword [ebp + 0x10]
cmp ecx, edi
jle 0x627dc6
push ecx
call fcn.004e1a40
add esp, 4
push eax
mov ecx, 0xaae4cc
call fcn.00422100
mov esi, eax
jmp 0x627e1a
cmp dword [esi + 0x3bc], 3
jne 0x627ddc
mov ecx, dword [ebp + 8]
push ecx
mov ecx, eax
call fcn.004ab3b0
jmp 0x627de7
mov edx, dword [ebp + 8]
push edx
mov ecx, eax
call fcn.004aafa0
cmp eax, edi
je 0x628a9d
push edi
push 0x972918
push 0x972774
push edi
push eax
call fcn.0074d229
add esp, 0x14
cmp eax, edi
je 0x628a9d
mov eax, dword [eax + 0x18]
cmp eax, edi
je 0x628a9d
mov esi, dword [eax + 8]
cmp esi, edi
je 0x628a9d
mov al, byte [esi + 0x238]
cmp al, 1
jne 0x628a9d
mov eax, dword [esi + 0x28]
mov ecx, dword [0x996e0c]
push eax
lea eax, [esp + 0x6c]
push eax
call fcn.004499b0
mov eax, dword [esi + 0x2c]
push eax
lea ecx, [esp + 0x7c]
push ecx
mov ecx, dword [0x996e0c]
mov dword [esp + 0xb4], edi
call fcn.004499b0
mov edx, dword [esi + 0x15c]
mov dword [esp + 0x48], edx
mov dword [esp + 0x88], edi
mov dword [esp + 0x8c], edi
mov dword [esp + 0x80], edi
mov dword [esp + 0x84], edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x5c], edi
mov dword [esp + 0x50], edi
mov dword [esp + 0x54], edi
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], edi
mov dword [esp + 0x60], edi
mov dword [esp + 0x64], edi
mov al, byte [esi + 0x23a]
test al, al
mov byte [esp + 0xac], 7
je 0x628444
cmp dword [esi + 0x23c], 0x7958c8
je 0x628444
mov ecx, dword [esi + 4]
imul ecx, ecx, 0x64
movzx eax, al
add ecx, eax
mov ebx, ecx
mov ecx, dword [0x996e0c]
mov dword [esp + 0x4c], eax
push ebx
lea eax, [esp + 0x1c]
push eax
call fcn.004499b0
cmp dword [esp + 0x18], edi
mov byte [esp + 0xac], 8
jne 0x627fc0
push 0x110
call fcn.0074caae
add esp, 4
mov dword [esp + 0x30], eax
cmp eax, edi
mov byte [esp + 0xac], 9
je 0x627f25
mov ecx, eax
call fcn.004494d0
jmp 0x627f27
xor eax, eax
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0xb0], 8
call fcn.00443b80
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0xb0], 0xa
call fcn.0043b540
mov ecx, dword [esp + 0x24]
cmp ecx, edi
mov byte [esp + 0xac], 8
je 0x627f60
call fcn.00435470
mov ecx, dword [esp + 0x18]
push ebx
call fcn.00447860
mov ecx, dword [esp + 0x4c]
push ecx
mov ecx, dword [esp + 0x1c]
call fcn.00447870
mov eax, dword [esi + 0x23c]
mov ecx, dword [esp + 0x18]
push eax
call fcn.0044a370
sub esp, 8
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x38], esp
push edx
call fcn.0043b500
mov ecx, dword [esp + 0x20]
mov byte [esp + 0xb4], 0xb
call fcn.00447840
mov byte [esp + 0xb4], 8
mov ecx, dword [0x996e0c]
push eax
call fcn.0044b3e0
push 0x240
call fcn.0074caae
mov ebx, eax
add esp, 4
mov dword [esp + 0x30], ebx
cmp ebx, edi
mov byte [esp + 0xac], 0xc
je 0x628004
fldz
push edi
push ecx
fstp dword [esp]
push 1
sub esp, 8
lea eax, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x34], esp
push eax
call fcn.0043b500
mov ecx, ebx
call fcn.00449660
jmp 0x628006
xor eax, eax
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0xb0], 8
call fcn.0043d280
push eax
lea ecx, [esp + 0x74]
mov byte [esp + 0xb0], 0xd
call fcn.0043b540
mov ecx, dword [esp + 0x10]
cmp ecx, edi
mov byte [esp + 0xac], 8
je 0x62803f
call fcn.00435470
mov ebx, dword [esp + 0x70]
mov ecx, ebx
call fcn.0044a440
test al, al
je 0x6280f9
mov ecx, ebx
call fcn.00447af0
cmp ebx, edi
je 0x6280e5
fld dword [0x979358]
lea ecx, [esp + 0xc]
fstp dword [esp + 0x34]
push ecx
fld dword [0x97935c]
lea edx, [esp + 0x24]
fstp dword [esp + 0x3c]
push edx
fld dword [0x979360]
lea eax, [esp + 0x3c]
fstp dword [esp + 0x44]
push eax
fld dword [0x979364]
mov ecx, ebx
fstp dword [esp + 0x4c]
fld dword [0x979308]
fstp dword [esp + 0x2c]
fld dword [0x97930c]
fstp dword [esp + 0x30]
fld dword [0x979310]
fstp dword [esp + 0x34]
fld dword [0x979314]
fstp dword [esp + 0x38]
fld dword [0x9792c4]
fstp dword [esp + 0x18]
fld dword [0x9792c8]
fstp dword [esp + 0x1c]
fld dword [0x9792cc]
fstp dword [esp + 0x20]
call fcn.00443530
lea ecx, [esp + 0x70]
push ecx
mov ecx, dword [esp + 0x48]
add ecx, 0x434
call fcn.005f0960
cmp dword [esp + 0x68], edi
je 0x628288
mov eax, dword [esp + 0x48]
cmp eax, eax
jb 0x628288
push 0x240
call fcn.0074caae
mov ebx, eax
add esp, 4
mov dword [esp + 0x20], ebx
cmp ebx, edi
mov byte [esp + 0xac], 0xe
je 0x628153
fldz
push edi
push ecx
fstp dword [esp]
push 1
sub esp, 8
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.0043b500
mov ecx, ebx
call fcn.00449660
jmp 0x628155
xor eax, eax
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0xb0], 8
call fcn.0043d280
push eax
lea ecx, [esp + 0x8c]
mov byte [esp + 0xb0], 0xf
call fcn.0043b540
mov ecx, dword [esp + 0x10]
cmp ecx, edi
mov byte [esp + 0xac], 8
je 0x628191
call fcn.00435470
mov ebx, dword [esp + 0x88]
lea eax, [esp + 0xc]
push eax
mov ecx, ebx
call fcn.00448770
mov ecx, dword [esp + 0x4c]
mov eax, dword [eax]
push ecx
mov ecx, eax
mov byte [esp + 0xb0], 0x10
call fcn.00447870
mov ecx, dword [esp + 0x10]
cmp ecx, edi
mov byte [esp + 0xac], 8
je 0x6281cf
call fcn.00435470
mov ecx, ebx
call fcn.0044a440
test al, al
je 0x628288
mov ecx, ebx
call fcn.00447af0
cmp ebx, edi
je 0x628271
fld dword [0x979358]
lea edx, [esp + 0xc]
fstp dword [esp + 0x20]
push edx
fld dword [0x97935c]
lea eax, [esp + 0x38]
fstp dword [esp + 0x28]
push eax
fld dword [0x979360]
lea ecx, [esp + 0x28]
fstp dword [esp + 0x30]
push ecx
fld dword [0x979364]
mov ecx, ebx
fstp dword [esp + 0x38]
fld dword [0x979308]
fstp dword [esp + 0x40]
fld dword [0x97930c]
fstp dword [esp + 0x44]
fld dword [0x979310]
fstp dword [esp + 0x48]
fld dword [0x979314]
fstp dword [esp + 0x4c]
fld dword [0x9792c4]
fstp dword [esp + 0x18]
fld dword [0x9792c8]
fstp dword [esp + 0x1c]
fld dword [0x9792cc]
fstp dword [esp + 0x20]
call fcn.00443530
mov ecx, dword [esp + 0x44]
lea edx, [esp + 0x88]
push edx
add ecx, 0x434
call fcn.005f0960
cmp dword [esp + 0x78], edi
je 0x62842f
cmp dword [esp + 0x48], edi
jle 0x62842f
push 0x240
call fcn.0074caae
mov ebx, eax
add esp, 4
mov dword [esp + 0x20], ebx
cmp ebx, edi
mov byte [esp + 0xac], 0x11
je 0x6282e3
fldz
push edi
push ecx
fstp dword [esp]
push 1
sub esp, 8
lea eax, [esp + 0x8c]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
call fcn.0043b500
mov ecx, ebx
call fcn.00449660
jmp 0x6282e5
xor eax, eax
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0xb0], 8
call fcn.0043d280
push eax
lea ecx, [esp + 0x5c]
mov byte [esp + 0xb0], 0x12
call fcn.0043b540
mov ecx, dword [esp + 0x10]
cmp ecx, edi
mov byte [esp + 0xac], 8
je 0x62831e
call fcn.00435470
mov ebx, dword [esp + 0x58]
lea ecx, [esp + 0xc]
push ecx
mov ecx, ebx
call fcn.00448770
mov eax, dword [eax]
mov edx, dword [esp + 0x4c]
push edx
mov ecx, eax
mov byte [esp + 0xb0], 0x13
call fcn.00447870
mov ecx, dword [esp + 0x10]
cmp ecx, edi
mov byte [esp + 0xac], 8
je 0x628359
call fcn.00435470
mov ecx, ebx
call fcn.0044a440
test al, al
je 0x62842f
mov ecx, ebx
call fcn.00447af0
cmp ebx, edi
je 0x6283fb
fld dword [0x979358]
lea eax, [esp + 0xc]
fstp dword [esp + 0x20]
push eax
fld dword [0x97935c]
lea ecx, [esp + 0x38]
fstp dword [esp + 0x28]
push ecx
fld dword [0x979360]
lea edx, [esp + 0x28]
fstp dword [esp + 0x30]
push edx
fld dword [0x979364]
mov ecx, ebx
fstp dword [esp + 0x38]
fld dword [0x979308]
fstp dword [esp + 0x40]
fld dword [0x97930c]
fstp dword [esp + 0x44]
fld dword [0x979310]
fstp dword [esp + 0x48]
fld dword [0x979314]
fstp dword [esp + 0x4c]
fld dword [0x9792c4]
fstp dword [esp + 0x18]
fld dword [0x9792c8]
fstp dword [esp + 0x1c]
fld dword [0x9792cc]
fstp dword [esp + 0x20]
call fcn.00443530
mov eax, dword [esp + 0x48]
push eax
sub esp, 8
lea edx, [esp + 0x64]
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
call fcn.0043b500
mov ebx, dword [esp + 0x50]
push esi
mov ecx, ebx
call fcn.00626e90
lea eax, [esp + 0x58]
push eax
lea ecx, [ebx + 0x434]
call fcn.005f0960
mov ecx, dword [esp + 0x1c]
cmp ecx, edi
mov byte [esp + 0xac], 7
je 0x628444
call fcn.00435470
mov cl, byte [esi + 0x240]
test cl, cl
je 0x6289ec
cmp dword [esi + 0x244], 0x7958c8
je 0x6289ec
mov eax, dword [esi + 4]
imul eax, eax, 0x64
movzx edi, cl
add eax, edi
mov ebx, eax
push ebx
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [0x996e0c]
call fcn.004499b0
cmp dword [esp + 0x18], 0
mov byte [esp + 0xac], 0x14
jne 0x628550
push 0x110
call fcn.0074caae
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov byte [esp + 0xac], 0x15
je 0x6284b9
mov ecx, eax
call fcn.004494d0
jmp 0x6284bb
xor eax, eax
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0xb0], 0x14
call fcn.00443b80
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0xb0], 0x16
call fcn.0043b540
mov ecx, dword [esp + 0x10]
test ecx, ecx
mov byte [esp + 0xac], 0x14
je 0x6284f4
call fcn.00435470
mov ecx, dword [esp + 0x18]
push ebx
call fcn.00447860
mov ecx, dword [esp + 0x18]
push edi
call fcn.00447870
mov eax, dword [esi + 0x244]
mov ecx, dword [esp + 0x18]
push eax
call fcn.0044a370
sub esp, 8
lea edx, [esp + 0x20]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.0043b500
mov ecx, dword [esp + 0x20]
mov byte [esp + 0xb4], 0x17
call fcn.00447840
mov byte [esp + 0xb4], 0x14
mov ecx, dword [0x996e0c]
push eax
call fcn.0044b3e0
push 0x240
call fcn.0074caae
mov edi, eax
add esp, 4
mov dword [esp + 0x20], edi
test edi, edi
mov byte [esp + 0xac], 0x18
je 0x628595
fldz
push 0
push ecx
fstp dword [esp]
push 1
sub esp, 8
lea eax, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
call fcn.0043b500
mov ecx, edi
call fcn.00449660
jmp 0x628597
xor eax, eax
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0xb0], 0x14
call fcn.0043d280
push eax
lea ecx, [esp + 0x64]
mov byte [esp + 0xb0], 0x19
call fcn.0043b540
mov ecx, dword [esp + 0x10]
test ecx, ecx
mov byte [esp + 0xac], 0x14
je 0x6285d0
call fcn.00435470
mov edi, dword [esp + 0x60]
mov ecx, edi
call fcn.0044a440
test al, al
je 0x62868a
mov ecx, edi
call fcn.00447af0
test edi, edi
je 0x628676
fld dword [0x979358]
lea ecx, [esp + 0xc]
fstp dword [esp + 0x20]
push ecx
fld dword [0x97935c]
lea edx, [esp + 0x38]
fstp dword [esp + 0x28]
push edx
fld dword [0x979360]
lea eax, [esp + 0x28]
fstp dword [esp + 0x30]
push eax
fld dword [0x979364]
mov ecx, edi
fstp dword [esp + 0x38]
fld dword [0x979308]
fstp dword [esp + 0x40]
fld dword [0x97930c]
fstp dword [esp + 0x44]
fld dword [0x979310]
fstp dword [esp + 0x48]
fld dword [0x979314]
fstp dword [esp + 0x4c]
fld dword [0x9792c4]
fstp dword [esp + 0x18]
fld dword [0x9792c8]
fstp dword [esp + 0x1c]
fld dword [0x9792cc]
fstp dword [esp + 0x20]
call fcn.00443530
lea ecx, [esp + 0x60]
push ecx
mov ecx, dword [esp + 0x48]
add ecx, 0x434
call fcn.005f0960
cmp dword [esp + 0x68], 0
mov ebx, dword [esp + 0x48]
je 0x628820
cmp ebx, ebx
jb 0x628820
push 0x240
call fcn.0074caae
mov edi, eax
add esp, 4
mov dword [esp + 0x20], edi
test edi, edi
mov byte [esp + 0xac], 0x1a
je 0x6286e6
fldz
push 0
push ecx
fstp dword [esp]
push 1
sub esp, 8
lea edx, [esp + 0x7c]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.0043b500
mov ecx, edi
call fcn.00449660
jmp 0x6286e8
xor eax, eax
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0xb0], 0x14
call fcn.0043d280
push eax
lea ecx, [esp + 0x84]
mov byte [esp + 0xb0], 0x1b
call fcn.0043b540
mov ecx, dword [esp + 0x10]
test ecx, ecx
mov byte [esp + 0xac], 0x14
je 0x628724
call fcn.00435470
mov edi, dword [esp + 0x80]
lea eax, [esp + 0xc]
push eax
mov ecx, edi
call fcn.00448770
mov dl, byte [esi + 0x240]
mov eax, dword [eax]
movzx ecx, dl
push ecx
mov ecx, eax
mov byte [esp + 0xb0], 0x1c
call fcn.00447870
mov ecx, dword [esp + 0x10]
test ecx, ecx
mov byte [esp + 0xac], 0x14
je 0x628767
call fcn.00435470
mov ecx, edi
call fcn.0044a440
test al, al
je 0x628820
mov ecx, edi
call fcn.00447af0
test edi, edi
je 0x628809
fld dword [0x979358]
lea edx, [esp + 0xc]
fstp dword [esp + 0x20]
push edx
fld dword [0x97935c]
lea eax, [esp + 0x38]
fstp dword [esp + 0x28]
push eax
fld dword [0x979360]
lea ecx, [esp + 0x28]
fstp dword [esp + 0x30]
push ecx
fld dword [0x979364]
mov ecx, edi
fstp dword [esp + 0x38]
fld dword [0x979308]
fstp dword [esp + 0x40]
fld dword [0x97930c]
fstp dword [esp + 0x44]
fld dword [0x979310]
fstp dword [esp + 0x48]
fld dword [0x979314]
fstp dword [esp + 0x4c]
fld dword [0x9792c4]
fstp dword [esp + 0x18]
fld dword [0x9792c8]
fstp dword [esp + 0x1c]
fld dword [0x9792cc]
fstp dword [esp + 0x20]
call fcn.00443530
mov ecx, dword [esp + 0x44]
lea edx, [esp + 0x80]
push edx
add ecx, 0x434
call fcn.005f0960
cmp dword [esp + 0x78], 0
je 0x6289d7
test ebx, ebx
jle 0x6289d7
push 0x240
call fcn.0074caae
mov edi, eax
add esp, 4
mov dword [esp + 0x20], edi
test edi, edi
mov byte [esp + 0xac], 0x1d
je 0x62887b
fldz
push 0
push ecx
fstp dword [esp]
push 1
sub esp, 8
lea eax, [esp + 0x8c]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
call fcn.0043b500
mov ecx, edi
call fcn.00449660
jmp 0x62887d
xor eax, eax
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0xb0], 0x14
call fcn.0043d280
push eax
lea ecx, [esp + 0x54]
mov byte [esp + 0xb0], 0x1e
call fcn.0043b540
mov ecx, dword [esp + 0x10]
test ecx, ecx
mov byte [esp + 0xac], 0x14
je 0x6288b6
call fcn.00435470
mov edi, dword [esp + 0x50]
lea ecx, [esp + 0xc]
push ecx
mov ecx, edi
call fcn.00448770
mov dl, byte [esi + 0x240]
mov eax, dword [eax]
movzx edx, dl
push edx
mov ecx, eax
mov byte [esp + 0xb0], 0x1f
call fcn.00447870
mov ecx, dword [esp + 0x10]
test ecx, ecx
mov byte [esp + 0xac], 0x14
je 0x6288f6
call fcn.00435470
mov ecx, edi
call fcn.0044a440
test al, al
je 0x6289d7
mov ecx, edi
call fcn.00447af0
test edi, edi
je 0x6289a7
fld dword [0x979358]
lea eax, [esp + 0xc]
fstp dword [esp + 0x90]
push eax
fld dword [0x97935c]
lea ecx, [esp + 0x38]
fstp dword [esp + 0x98]
push ecx
fld dword [0x979360]
lea edx, [esp + 0x98]
fstp dword [esp + 0xa0]
push edx
fld dword [0x979364]
mov ecx, edi
fstp dword [esp + 0xa8]
fld dword [0x979308]
fstp dword [esp + 0x40]
fld dword [0x97930c]
fstp dword [esp + 0x44]
fld dword [0x979310]
fstp dword [esp + 0x48]
fld dword [0x979314]
fstp dword [esp + 0x4c]
fld dword [0x9792c4]
fstp dword [esp + 0x18]
fld dword [0x9792c8]
fstp dword [esp + 0x1c]
fld dword [0x9792cc]
fstp dword [esp + 0x20]
call fcn.00443530
push ebx
sub esp, 8
lea eax, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x2c], esp
push eax
call fcn.0043b500
push esi
mov esi, dword [esp + 0x54]
mov ecx, esi
call fcn.00626e90
lea ecx, [esp + 0x50]
push ecx
lea ecx, [esi + 0x434]
call fcn.005f0960
mov ecx, dword [esp + 0x1c]
test ecx, ecx
mov byte [esp + 0xac], 7
je 0x6289ec
call fcn.00435470
mov ecx, dword [esp + 0x64]
test ecx, ecx
mov byte [esp + 0xac], 6
je 0x628a01
call fcn.00435470
mov ecx, dword [esp + 0x74]
test ecx, ecx
mov byte [esp + 0xac], 5
je 0x628a16
call fcn.00435470
mov ecx, dword [esp + 0x54]
test ecx, ecx
mov byte [esp + 0xac], 4
je 0x628a2b
call fcn.00435470
mov ecx, dword [esp + 0x5c]
test ecx, ecx
mov byte [esp + 0xac], 3
je 0x628a40
call fcn.00435470
mov ecx, dword [esp + 0x84]
test ecx, ecx
mov byte [esp + 0xac], 2
je 0x628a58
call fcn.00435470
mov ecx, dword [esp + 0x8c]
test ecx, ecx
mov byte [esp + 0xac], 1
je 0x628a70
call fcn.00435470
mov ecx, dword [esp + 0x7c]
test ecx, ecx
mov byte [esp + 0xac], 0
je 0x628a85
call fcn.00435470
mov ecx, dword [esp + 0x6c]
test ecx, ecx
mov dword [esp + 0xac], 0xffffffff
je 0x628a9d
call fcn.00435470
mov ecx, dword [esp + 0xa4]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0xc