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

Disassembly:
push 0xffffffffffffffff
push 0x4a71cb
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4e3e9c]
xor eax, esp
push eax
lea eax, [esp + 0x24]
mov dword fs:[0], eax
mov edi, dword [esp + 0x34]
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0x10]
movzx eax, word [ecx + 6]
movzx eax, ax
add eax, 0xffffd650
cmp eax, 0x30
ja case.0x428809.10673
movzx edx, byte [eax + 0x428e0c]
jmp dword [edx*4 + 0x428df8]
push 0x4baa08
push 0x40
lea eax, [edi + 0x48]
push eax
jmp 0x428869
push str.P35_G33_G31
push 0x40
lea ecx, [edi + 0x48]
push ecx
jmp 0x428869
push 0x4ba9f8
push 0x40
lea edx, [edi + 0x48]
push edx
jmp 0x428869
push 0x4ba9f4
lea esi, [edi + 0x48]
push 0x40
push esi
call fcn.0048ef9c
add esp, 0xc
push 0xe8
mov ecx, edi
call fcn.004362d0
test eax, 0x2000000
mov dword [esp + 0x34], eax
je case.0x428809.10673
push 0x4ba9f0
push 0x40
push esi
call fcn.0048ef9c
add esp, 0xc
push 0x48
mov ecx, edi
call fcn.004362d0
mov esi, eax
mov ecx, eax
and esi, 0xffffc000
and ecx, 1
mov dword [esp + 0x34], eax
mov dword [esp + 0x20], ecx
jne 0x4288c4
or eax, 1
push eax
push 0x48
mov ecx, edi
mov dword [esp + 0x3c], eax
call fcn.00436300
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x48
mov ecx, edi
call fcn.004362d0
mov dword [esp + 0x34], eax
and eax, 1
mov dword [esp + 0x20], eax
je 0x428de2
push 0x2000000
push esi
xor ebx, ebx
push ebx
call fcn.00437ad0
mov ecx, eax
call fcn.00437140
cmp eax, ebx
mov dword [edi + 0x98], eax
jne 0x42892b
push 0x20
call fcn.0047fb47
add esp, 4
mov dword [esp + 0x1c], eax
cmp eax, ebx
mov dword [esp + 0x2c], ebx
je 0x42890b
push 0x1000
push esi
push ebx
mov ecx, eax
call fcn.0044ad50
mov esi, eax
jmp 0x42890d
xor esi, esi
mov dword [esp + 0x2c], 0xffffffff
mov dword [edi + 0x98], esi
call fcn.00437ad0
mov ecx, dword [eax + 0x18]
push esi
call fcn.00426380
jmp 0x428932
mov dword [eax + 0x10], 0x1000
mov ecx, dword [edi + 0x98]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
lea edx, [esp + 0x34]
push edx
push 0xc00
xor ebp, ebp
mov dword [esp + 0x1c], ebx
call eax
mov eax, dword [esp + 0x34]
cmp eax, 0xffffffff
je case.0x428c31.1
cmp eax, ebx
je case.0x428c31.1
mov ecx, dword [edi + 4]
mov edx, dword [ecx + 0x10]
movzx eax, word [edx + 6]
sub eax, 0x2e10
mov esi, dword [esp + 0x38]
je 0x428a32
sub eax, 0x10
je 0x428a32
sub eax, 0x10
je 0x428a32
mov ecx, dword [edi + 0x98]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
lea edx, [esp + 0x34]
push edx
push 0x1e8
call eax
mov eax, dword [esp + 0x34]
and eax, 1
sub eax, ebp
je 0x428a65
sub eax, 1
jne 0x4289c1
mov dword [esi + 4], 7
mov ecx, dword [edi + 0x98]
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
lea edx, [esp + 0x34]
push edx
push 0x260
call eax
mov ecx, dword [esp + 0x34]
shr ecx, 0x14
and ecx, 0xf
mov dword [esp + 0x34], ecx
je 0x4289f4
mov dword [esp + 0x14], 1
mov ebx, dword [esp + 0x14]
mov ecx, dword [edi + 0x98]
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0x34]
push eax
push 0x660
call edx
mov eax, dword [esp + 0x34]
shr eax, 0x14
and eax, 0xf
mov dword [esp + 0x34], eax
je 0x428a20
mov ebp, 1
cmp ebx, 1
jne 0x428a71
cmp ebp, ebx
jne 0x428a71
mov dword [esi + 0x50], 2
jmp 0x428a78
mov ecx, dword [edi + 0x98]
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0x34]
push eax
push 0x1a8
call edx
mov eax, dword [esp + 0x34]
shr eax, 2
and eax, 1
sub eax, 0
je 0x4289ba
sub eax, 1
jne 0x4289c1
mov dword [esi + 4], 9
jmp 0x4289c1
mov dword [esi + 0x50], 1
mov ecx, dword [edi + 0x98]
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0x34]
push eax
push 0x111
call edx
mov eax, dword [esp + 0x34]
shr eax, 1
and eax, 1
mov ecx, 1
sub ecx, eax
cmp ebx, 1
mov dword [esi + 0x54], ecx
jne 0x428ac1
mov ebx, 0x25d
mov dword [esp + 0x18], 0x265
lea ebp, [ebx - 0xb]
mov dword [esp + 0x1c], 0x258
jmp 0x428ad9
mov ebx, 0x65d
mov dword [esp + 0x18], 0x665
lea ebp, [ebx - 0xb]
mov dword [esp + 0x1c], 0x658
mov ecx, dword [edi + 0x98]
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0x34]
push eax
mov eax, dword [esp + 0x1c]
push eax
call edx
mov eax, dword [edi + 4]
mov ecx, dword [eax + 0x10]
movzx eax, word [ecx + 6]
sub eax, 0x2e10
je 0x428b2f
sub eax, 0x10
je 0x428b2f
sub eax, 0x10
je 0x428b2f
mov edx, dword [esp + 0x34]
shr edx, 8
and edx, 0x3f
test edx, edx
mov dword [esp + 0x18], edx
fild dword [esp + 0x18]
jge 0x428b27
fadd dword [0x4ba8a8]
fsub qword [0x4ba9e8]
jmp 0x428b51
mov eax, dword [esp + 0x34]
shr eax, 8
and eax, 0x3f
test eax, eax
mov dword [esp + 0x18], eax
fild dword [esp + 0x18]
jge 0x428b4b
fadd dword [0x4ba8a8]
fsub qword [0x4ba9e0]
fstp dword [esi + 0x18]
mov ecx, dword [edi + 0x98]
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0x34]
push eax
push ebx
call edx
mov eax, dword [esp + 0x34]
and eax, 0x3f
mov dword [esi + 0x24], eax
mov ecx, dword [edi + 0x98]
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0x34]
push eax
push ebp
call edx
mov eax, dword [esp + 0x34]
shr eax, 0xd
and eax, 0xf
mov dword [esi + 0x20], eax
mov ecx, dword [edi + 0x98]
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0x34]
push eax
mov eax, dword [esp + 0x20]
push eax
call edx
mov eax, dword [esp + 0x34]
shr eax, 0x11
and eax, 0xf
mov ebx, 1
cmp dword [esp + 0x14], ebx
mov dword [esi + 0x1c], eax
mov ecx, dword [edi + 0x98]
jne 0x428bd9
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0x34]
push eax
push 0x220
call edx
jmp 0x428bea
mov eax, dword [ecx]
mov eax, dword [eax + 0x18]
lea edx, [esp + 0x34]
push edx
push 0x620
call eax
mov eax, dword [esp + 0x34]
shr eax, 4
and eax, ebx
sub eax, 0
je 0x428c05
sub eax, ebx
jne 0x428c08
mov dword [esi + 0x3c], 2
jmp 0x428c08
mov dword [esi + 0x3c], ebx
mov ecx, dword [edi + 0x98]
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0x34]
push eax
push 0xc00
call edx
mov eax, dword [esp + 0x34]
mov ecx, eax
and ecx, 7
cmp ecx, 6
ja case.0x428c31.1
jmp dword [ecx*4 + 0x428e40]
shr eax, 4
and eax, 7
add eax, 0xffffffff
cmp eax, 4
ja case.default.0x428c46
jmp dword [eax*4 + 0x428e5c]
fld1
push 0x4ba7e0
push 0x20
lea eax, [esi + 0x78]
push eax
jmp 0x428ca0
fld dword [0x4ba378]
push 0x4ba808
jmp 0x428c9a
fld dword [0x4ba374]
push 0x4ba810
push 0x20
lea edx, [esi + 0x78]
push edx
jmp 0x428ca0
fld dword [0x4ba370]
push 0x4ba80c
push 0x20
lea eax, [esi + 0x78]
push eax
jmp 0x428ca0
fld dword [0x4ba428]
push 0x4ba8d8
push 0x20
lea ecx, [esi + 0x78]
push ecx
fstp dword [esi + 0xc]
call fcn.0048ef9c
add esp, 0xc
fld dword [0x4ba9d8]
jmp 0x428db1
shr eax, 4
and eax, 7
add eax, 0xfffffffe
cmp eax, 3
ja case.default.0x428c46
jmp dword [eax*4 + 0x428e70]
fld dword [0x4ba800]
push 0x4ba804
push 0x20
lea edx, [esi + 0x78]
push edx
jmp 0x428ca0
fld dword [0x4ba9d4]
push 0x4ba9d0
jmp 0x428c9a
fld dword [str.UUU_3:8]
push 0x4ba9c4
push 0x20
lea edx, [esi + 0x78]
push edx
jmp 0x428ca0
shr eax, 4
and eax, 7
add eax, 0xfffffffe
cmp eax, 3
ja case.default.0x428c46
jmp dword [eax*4 + 0x428e80]
fld1
push 0x4ba7e0
push 0x20
lea eax, [esi + 0x78]
push eax
jmp 0x428ca0
fld dword [0x4ba894]
push 0x4ba890
jmp 0x428c9a
fld dword [0x4ba8e0]
push 0x4ba8dc
push 0x20
lea edx, [esi + 0x78]
push edx
jmp 0x428ca0
shr eax, 4
and eax, 7
add eax, 0xfffffffd
cmp eax, 3
ja case.default.0x428d59
jmp dword [eax*4 + 0x428e90]
fld1
push 0x4ba7e0
jmp 0x428d9a
fld dword [0x4ba7f4]
push 0x4ba7f8
push 0x20
lea edx, [esi + 0x78]
push edx
jmp 0x428da0
fld dword [0x4ba800]
push 0x4ba804
push 0x20
lea eax, [esi + 0x78]
push eax
jmp 0x428da0
fld dword [0x4ba370]
push 0x4ba80c
push 0x20
lea ecx, [esi + 0x78]
push ecx
fstp dword [esi + 0xc]
call fcn.0048ef9c
add esp, 0xc
fld dword [0x4ba9c0]
fstp dword [esi + 0x9c]
push 0x48
mov ecx, edi
call fcn.004362d0
cmp dword [esp + 0x20], 0
jne 0x428de2
and eax, 0xfffffffe
push eax
push 0x48
mov ecx, edi
mov dword [esp + 0x3c], eax
call fcn.00436300
mov dword [edi + 0x98], 0
mov ecx, dword [esp + 0x24]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret