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

Disassembly:
push 0xffffffffffffffff
push 0x665ee8
mov eax, dword fs:[0]
push eax
sub esp, 0x54
push ebx
push ebp
push esi
push edi
mov eax, dword [0x8a0c44]
xor eax, esp
push eax
lea eax, [esp + 0x68]
mov dword fs:[0], eax
mov esi, dword [esp + 0x84]
xor eax, eax
cmp word [esi + 8], ax
jbe 0x456250
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x78]
push 1
push eax
push 1
push ecx
xor ebx, ebx
xor edi, edi
xor ebp, ebp
call fcn.005548d0
add esp, 0x10
mov dword [esp + 0x3c], eax
test eax, eax
jne 0x455ec7
mov eax, 0xfffff812
mov ecx, dword [esp + 0x68]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret
lea edx, [esp + 0x40]
push edx
lea ecx, [esp + 0x3c]
push ecx
push eax
call fcn.00554450
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x84]
push 0
push 0x140000
push edx
push eax
call fcn.005547f0
add esp, 0x1c
mov dword [esp + 0x34], eax
test eax, eax
je 0x456264
mov ecx, dword [esp + 0x78]
push 0
push 0
push ecx
call fcn.00554310
mov edx, dword [esp + 0x40]
add esp, 4
push eax
push 0x746d6364
push edx
call fcn.00554810
add esp, 0x14
mov dword [esp + 0x30], eax
test eax, eax
je 0x456264
push eax
call fcn.005544f0
add esp, 4
mov dword [esp + 0x2c], eax
test eax, eax
je 0x456264
mov ecx, dword [esi + 4]
xor eax, eax
cmp ecx, 1
jne 0x455f50
mov eax, ecx
fild dword [esp + 0x88]
or eax, 2
mov dword [esp + 0x44], eax
fidiv dword [esp + 0x8c]
call fcn.00640060
add eax, 0xffffffe9
cmp eax, 0x25
ja case.0x455f79.26
movzx eax, byte [eax + 0x45628c]
jmp dword [eax*4 + 0x45627c]
movzx ecx, word [esi + 8]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], 1
jmp 0x455fb6
mov dword [esp + 0x48], 0x95e
jmp 0x455fae
mov dword [esp + 0x48], 0x176a
jmp 0x455fae
mov dword [esp + 0x48], 0xbb5
mov dword [esp + 0x4c], 0x64
movzx edx, byte [esi + 8]
lea eax, [esp + 0x1c]
push eax
mov byte [esp + 0x54], dl
lea ecx, [esp + 0x1c]
push ecx
movzx ecx, word [esi + 8]
lea edx, [esp + 0x1c]
push edx
mov edx, dword [esi]
lea eax, [esp + 0x90]
push eax
mov eax, dword [esi + 4]
push eax
push ecx
push edx
call fcn.0043d0f0
movzx eax, byte [esp + 0xa0]
mov cl, byte [esp + 0x30]
movzx edx, byte [esp + 0x34]
mov byte [esp + 0x3c], al
movzx eax, byte [esp + 0x38]
mov byte [esp + 0x3d], cl
mov ecx, dword [esp + 0x50]
push 0
push ecx
mov byte [esp + 0x46], dl
mov byte [esp + 0x47], al
call fcn.00554410
mov edx, dword [esp + 0x50]
push 1
push 0
push edx
call fcn.00555520
mov eax, dword [esp + 0x60]
push eax
call fcn.00554510
movzx esi, ax
add esp, 0x34
test si, si
jne 0x4561e7
push 0x26
call fcn.00554b70
mov edi, eax
xor ebp, ebp
add esp, 4
cmp edi, ebp
je 0x45624d
mov ecx, dword [edi]
mov ebx, dword [esp + 0x80]
mov dword [ecx], 0x26
mov edx, dword [edi]
mov ecx, dword [esp + 0x44]
mov dword [edx + 4], 0x746d6364
mov eax, dword [edi]
mov edx, dword [esp + 0x48]
add eax, 0x14
mov dword [eax], ecx
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], edx
mov dx, word [esp + 0x50]
mov dword [eax + 8], ecx
mov word [eax + 0xc], dx
cmp ebx, ebp
je 0x456155
cmp byte [ebx], 0
je 0x456155
lea eax, [esp + 0x28]
push eax
call fcn.00554710
movzx esi, ax
add esp, 4
cmp si, bp
jne 0x456155
push 9
push ebx
lea ecx, [esp + 0x5c]
mov dword [esp + 0x2c], ebp
call fcn.00433600
mov esi, dword [esp + 0x58]
lea ecx, [esp + 0x54]
mov dword [esp + 0x70], ebp
call fcn.004317e0
push eax
lea ecx, [esp + 0x28]
push ecx
push esi
call fcn.00554cb0
movzx esi, ax
add esp, 0xc
cmp si, bp
jne 0x456126
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
push ebp
push 1
push 0x6e616d65
push edx
push eax
call fcn.00554750
movzx esi, ax
add esp, 0x14
cmp si, bp
jne 0x456126
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
push ecx
push edi
push edx
call fcn.005554e0
add esp, 0xc
mov eax, dword [esp + 0x24]
cmp eax, ebp
je 0x456137
push eax
call fcn.00554c10
add esp, 4
mov eax, dword [esp + 0x28]
push eax
call fcn.00554730
add esp, 4
lea ecx, [esp + 0x54]
mov dword [esp + 0x70], 0xffffffff
call fcn.00431720
push 4
call fcn.00554b50
mov ebp, eax
add esp, 4
test ebp, ebp
je 0x456233
mov ecx, dword [ebp]
mov eax, dword [edi]
push ecx
mov ecx, dword [esp + 0x30]
lea edx, [esp + 0x24]
push edx
add eax, 0x14
push eax
push ecx
call fcn.00555450
mov ecx, dword [ebp]
mov eax, dword [ecx]
movzx edx, byte [ecx + 3]
mov esi, eax
shr esi, 8
and esi, 0xff00
or edx, esi
mov esi, eax
and eax, 0xff00
shl esi, 0x10
or esi, eax
mov eax, dword [esp + 0x88]
shl esi, 8
or edx, esi
push eax
mov dword [ecx], edx
call fcn.00554350
add esp, 0x14
push 0
push 0
push 1
mov ebx, eax
push edi
push ebx
push ebp
call fcn.00554c50
mov ecx, dword [esp + 0x48]
add esp, 4
push eax
push 0
push ebp
push ecx
call fcn.005545d0
movzx esi, ax
add esp, 0x24
test si, si
jne 0x456233
mov edx, dword [esp + 0x30]
push edx
call fcn.00554530
movzx esi, ax
add esp, 4
test si, si
jne 0x456233
push 0x10000
push ebx
mov ebx, dword [esp + 0x3c]
push 0
push 0
push ebx
call fcn.005547b0
movzx esi, ax
add esp, 0x14
test si, si
jne 0x456233
mov eax, dword [esp + 0x3c]
push 0
push 0x746d6364
push ebx
push eax
call fcn.005548b0
add esp, 0x10
movzx esi, ax
test edi, edi
je 0x456240
push edi
call fcn.00554c10
add esp, 4
test ebp, ebp
je 0x45624d
push ebp
call fcn.00554c10
add esp, 4
mov ax, si
mov ecx, dword [esp + 0x68]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret
xor eax, eax
mov ecx, dword [esp + 0x68]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret