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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xb8]
cmp eax, dword [ecx + 8]
jbe 0x4e1ba4
sub esp, 0x138
mov eax, dword [esp + 0x14c]
mov dword [esp], eax
mov ecx, dword [esp + 0x150]
mov dword [esp + 4], ecx
call fcn.004e5170
mov eax, dword [esp + 8]
test eax, eax
jne 0x4e0c38
mov ecx, dword [esp + 0x14c]
test ecx, ecx
je 0x4e0c26
nop
movzx edx, byte [0x10e5068]
test dl, dl
je 0x4e0c1a
mov dword [0x10e506c], ecx
mov edx, dword [0x10fd360]
test edx, edx
jne 0x4e0c03
mov eax, dword [esp + 0x150]
mov dword [0x10e5070], eax
mov dword [esp + 0x118], ecx
mov dword [esp + 0x11c], eax
mov edx, dword [esp + 0x118]
test edx, edx
je 0x4e0bf6
nop
movzx ebx, byte [edx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x4e092d
or ebx, 0x80
mov ebp, eax
nop
nop
mov esi, ebx
and ebx, 0x1f
cmp ebx, 0x16
je 0x4e0b89
cmp ebx, 0x17
je 0x4e0b38
mov ebx, 0xffffffff
test ebx, ebx
jge 0x4e0a22
mov dword [esp + 0x110], ecx
mov dword [esp + 0x114], ebp
mov eax, dword [esp + 0x110]
test eax, eax
je 0x4e0a19
lea ecx, [0xc92ac0]
mov ecx, dword [ecx + 0x80]
mov dword [esp], eax
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], 0
lea edx, [0xba4dd0]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x1a
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.0044a440
mov eax, dword [esp + 0x14]
mov dword [esp + 0xe4], eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x28], ecx
lea edx, [0xad4dc0]
mov dword [esp], edx
call fcn.0040bd00
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x28]
mov dword [edi + 4], eax
mov eax, dword [0x10fd360]
test eax, eax
jne 0x4e0a0b
mov eax, dword [esp + 0xe4]
mov dword [edi], eax
lea eax, [0xc7fc40]
mov dword [esp + 0x154], eax
mov dword [esp + 0x158], edi
add esp, 0x138
ret
mov eax, dword [esp + 0xe4]
call fcn.00460b40
jmp 0x4e09f0
xor ecx, ecx
xor eax, eax
jmp 0x4e0978
mov dword [esp + 0x24], esi
mov dword [esp + 0x2c], ebx
mov dword [esp + 0xe0], eax
mov dword [esp + 0xd4], edx
lea eax, [0xaa98e0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00446f30
mov eax, dword [esp + 0xc]
mov dword [esp + 0x10c], eax
lea edi, [esp + 0x120]
xor eax, eax
call fcn.00460dea
mov eax, dword [esp + 0x144]
mov dword [esp + 0x120], eax
mov eax, dword [esp + 0x148]
mov dword [esp + 0x124], eax
mov eax, dword [esp + 0x10c]
mov dword [esp + 0x128], eax
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x12c], ecx
mov dword [esp + 0x130], ecx
mov edx, dword [esp + 0x13c]
mov dword [esp], edx
mov edx, dword [esp + 0x140]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ecx
call fcn.0046cbd0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
test eax, eax
je 0x4e0aee
mov dword [esp + 0x154], eax
mov dword [esp + 0x158], ecx
add esp, 0x138
ret
lea eax, [esp + 0x120]
mov dword [esp], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xe0]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0xc], eax
call fcn.004e36c0
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], 0
add esp, 0x138
ret
mov dword [esp + 0x80], esi
mov dword [esp + 0xdc], eax
mov dword [esp + 0xd8], edx
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], esi
call fcn.004e3160
mov ebx, dword [esp + 0xc]
mov ecx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x150]
mov esi, dword [esp + 0x80]
mov edx, dword [esp + 0xd8]
mov eax, dword [esp + 0xdc]
jmp 0x4e094d
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], esi
call fcn.004d2430
mov eax, dword [esp + 0xc]
mov dword [esp + 0x108], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10c], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x80], edx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.004e3160
mov ebx, dword [esp + 0xc]
mov ecx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x150]
mov esi, dword [esp + 0x80]
mov edx, dword [esp + 0x108]
mov eax, dword [esp + 0x10c]
jmp 0x4e094d
mov ebp, eax
xor ebx, ebx
xor edx, edx
xor eax, eax
jmp 0x4e092f
lea edi, [0x10e5070]
mov eax, dword [esp + 0x150]
call fcn.00460b40
jmp 0x4e08f9
mov eax, dword [esp + 0x150]
jmp 0x4e08f9
mov ebp, dword [esp + 0x150]
xor ebx, ebx
xor edx, edx
xor eax, eax
jmp 0x4e092f
mov dword [esp + 0x70], eax
lea ecx, [0xaa98e0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00446f30
mov eax, dword [esp + 0xc]
mov dword [esp + 0x10c], eax
mov ecx, dword [esp + 0x13c]
mov dword [esp], ecx
mov edx, dword [esp + 0x140]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov ebx, dword [esp + 0x70]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], ebx
call fcn.0046cbd0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
test eax, eax
jne 0x4e1afa
mov edx, dword [esp + 0x14c]
test edx, edx
je 0x4e0d4f
mov ebx, dword [edx + 8]
cmp ebx, 0x6b581726
ja 0x4e1332
cmp ebx, 0x2069b53f
jbe 0x4e0fba
cmp ebx, 0x30c31d62
ja 0x4e0ebc
cmp ebx, 0x20e38ee7
je 0x4e0db7
cmp ebx, 0x26b80717
je 0x4e0d5a
cmp ebx, 0x30c31d62
jne 0x4e0d4f
lea ebx, [0xa7ac40]
cmp ebx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x150]
mov ecx, dword [eax + 4]
mov ebx, dword [eax]
mov ebp, dword [esp + 0x70]
mov esi, dword [esp + 0x10c]
xor edi, edi
jmp 0x4e0d19
mov byte [ebx + edi], dl
inc edi
mov edx, dword [esp + 0x14c]
cmp ebp, edi
jle 0x4e0d2a
movzx edx, byte [edi + esi]
cmp ecx, edi
ja 0x4e0d0e
jmp 0x4e1b95
test ebp, ebp
je 0x4e08b9
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], 0
add esp, 0x138
ret
mov eax, dword [esp + 0x150]
xor ebp, ebp
jmp 0x4e0d2a
lea ecx, [0xa69000]
cmp ecx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x144]
mov ecx, dword [eax + 0x28]
mov edx, dword [esp + 0x148]
mov dword [esp], edx
mov ebx, dword [esp + 0x10c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x150]
mov dword [edx], eax
mov dword [edx + 4], ecx
mov eax, edx
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
lea ebx, [0xa7cbc0]
cmp ebx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x150]
mov ebx, dword [eax + 4]
mov dword [esp + 0x50], ebx
mov ebp, dword [eax]
mov dword [esp + 0x100], ebp
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0xcc], eax
xor eax, eax
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0xcc]
jmp 0x4e0e51
mov ebp, dword [esp + 0x100]
mov word [ebp + edx*2], ax
lea eax, [edx + 1]
mov edx, dword [esp + 0x148]
mov ebx, dword [esp + 0x144]
mov esi, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebx
mov edx, dword [esp + 0x14c]
mov ebx, dword [esp + 0x50]
mov esi, dword [esp + 0x148]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x150]
mov edx, dword [esp + 0x38]
cmp ebx, edx
jle 0x4e0eac
shl edx, 1
mov ebp, dword [esp + 0x70]
cmp ebp, edx
jb 0x4e1b7a
mov eax, dword [ecx + 0x20]
mov dword [esp], esi
sub ebp, edx
mov dword [esp + 0x7c], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, edi
mov dword [esp + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edx
call eax
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x38]
cmp ecx, edx
ja 0x4e0e03
jmp 0x4e1b73
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0x382e7edf
jne 0x4e0f22
lea ecx, [0xa7cc80]
cmp ecx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x150]
mov ecx, dword [eax]
mov ebx, dword [eax + 4]
mov ebp, dword [esp + 0x70]
cmp ebp, ebx
jge 0x4e0f1a
mov ebx, ebp
mov esi, dword [esp + 0x10c]
cmp esi, ecx
je 0x4e0f03
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
call fcn.004614f0
mov eax, dword [esp + 0x150]
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
mov ebp, ebx
mov ebx, dword [esp + 0x70]
jmp 0x4e0ee8
cmp ebx, 0x5fcadfef
jne 0x4e0f54
lea ecx, [0xa69040]
cmp ecx, edx
jne 0x4e0d4f
mov ecx, dword [esp + 0x10c]
movzx ecx, byte [ecx]
mov eax, dword [esp + 0x150]
mov byte [eax], cl
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0x6b581726
jne 0x4e0d4f
lea ecx, [0xa68fc0]
cmp ecx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x144]
mov ecx, dword [eax + 0x24]
mov edx, dword [esp + 0x148]
mov dword [esp], edx
mov ebx, dword [esp + 0x10c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x150]
mov dword [ecx], eax
mov eax, ecx
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0x1e2f74f8
jbe 0x4e1263
cmp ebx, 0x1f1d91d4
jne 0x4e10da
lea ebx, [0xa7cc00]
cmp ebx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x150]
mov ebx, dword [eax + 4]
mov dword [esp + 0x6c], ebx
mov ebp, dword [eax]
mov dword [esp + 0xec], ebp
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0xc4], eax
xor eax, eax
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc4]
jmp 0x4e106f
mov ebp, dword [esp + 0xec]
mov dword [ebp + ecx*4], eax
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x148]
mov ebx, dword [esp + 0x144]
mov esi, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebx
mov edx, dword [esp + 0x14c]
mov ebx, dword [esp + 0x6c]
mov esi, dword [esp + 0x148]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x150]
mov edx, dword [esp + 0x30]
cmp edx, ebx
jge 0x4e10ca
shl edx, 2
mov ebp, dword [esp + 0x70]
cmp ebp, edx
jb 0x4e1b58
mov eax, dword [ecx + 0x24]
mov dword [esp], esi
sub ebp, edx
mov dword [esp + 0x7c], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, edi
mov dword [esp + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jb 0x4e1022
jmp 0x4e1b4f
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0x1ffee651
je 0x4e11ff
cmp ebx, 0x2069b53f
jne 0x4e0d4f
lea ebx, [0xa7cc40]
cmp ebx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x150]
mov ebx, dword [eax + 4]
mov dword [esp + 0x58], ebx
mov ebp, dword [eax]
mov dword [esp + 0xfc], ebp
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0xbc], eax
xor eax, eax
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xbc]
jmp 0x4e1190
mov ebp, dword [esp + 0xfc]
lea esi, [ebp + edx*8]
mov dword [esi], eax
mov dword [esi + 4], ecx
lea eax, [edx + 1]
mov ecx, dword [esp + 0x148]
mov edx, dword [esp + 0x144]
mov esi, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, edx
mov edx, dword [esp + 0x14c]
mov esi, dword [esp + 0x148]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x150]
mov edx, dword [esp + 0x4c]
cmp edx, ebx
jge 0x4e11ef
shl edx, 3
mov ebp, dword [esp + 0x70]
cmp ebp, edx
jb 0x4e1b34
mov eax, dword [ecx + 0x28]
mov dword [esp], esi
sub ebp, edx
mov dword [esp + 0x7c], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, edi
mov dword [esp + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x58]
cmp edx, ebx
jb 0x4e1142
jmp 0x4e1b2b
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
lea ecx, [0xa61480]
cmp ecx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x144]
mov ecx, dword [eax + 0x24]
mov edx, dword [esp + 0x148]
mov dword [esp], edx
mov ebx, dword [esp + 0x10c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call ecx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x74], eax
movss xmm0, dword [esp + 0x74]
mov eax, dword [esp + 0x150]
movss dword [eax], xmm0
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0xc66cd3
jne 0x4e12c5
lea ecx, [0xa73240]
cmp ecx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x144]
mov ecx, dword [eax + 0x24]
mov edx, dword [esp + 0x148]
mov dword [esp], edx
mov ebx, dword [esp + 0x10c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x150]
mov dword [ecx], eax
mov eax, ecx
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0x1e2f74f8
jne 0x4e0d4f
lea ecx, [0xa73280]
cmp ecx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x144]
mov ecx, dword [eax + 0x28]
mov edx, dword [esp + 0x148]
mov dword [esp], edx
mov ebx, dword [esp + 0x10c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x150]
mov dword [edx], eax
mov dword [edx + 4], ecx
mov eax, edx
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0x88768e96
jbe 0x4e1656
cmp ebx, 0xa066c615
jbe 0x4e1489
cmp ebx, 0xba56ad13
je 0x4e1414
cmp ebx, 0xe781e5b1
jne 0x4e13ac
lea ebx, [0xa77b80]
cmp ebx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x150]
mov ecx, dword [eax + 4]
mov ebx, dword [eax]
mov ebp, dword [esp + 0x70]
mov esi, dword [esp + 0x10c]
xor edi, edi
jmp 0x4e1397
test dl, dl
setne dl
mov byte [ebx + edi], dl
inc edi
mov edx, dword [esp + 0x14c]
cmp ebp, edi
jle 0x4e0d2a
movzx edx, byte [edi + esi]
cmp edi, ecx
jb 0x4e1387
jmp 0x4e1b9c
cmp ebx, 0xee92f42e
jne 0x4e0d4f
lea ecx, [0xa73200]
cmp ecx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x144]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 0x148]
mov dword [esp], edx
mov ebx, dword [esp + 0x10c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call ecx
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x150]
mov word [ecx], ax
mov eax, ecx
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
lea ecx, [0xa614c0]
cmp ecx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x144]
mov ecx, dword [eax + 0x28]
mov edx, dword [esp + 0x148]
mov dword [esp], edx
mov ebx, dword [esp + 0x10c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ecx
movsd xmm0, qword [esp + 0x84]
mov eax, dword [esp + 0x150]
movsd qword [eax], xmm0
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0x9ad926a8
je 0x4e162c
cmp ebx, 0x9c373330
jne 0x4e15c4
lea ebx, [0xa78b80]
cmp ebx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x150]
mov ebx, dword [eax + 4]
mov dword [esp + 0x64], ebx
mov ebp, dword [eax]
mov dword [esp + 0xf8], ebp
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0xb4], eax
xor eax, eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0xb4]
jmp 0x4e153e
mov ebp, dword [esp + 0xf8]
movsd qword [ebp + eax*8], xmm0
inc eax
mov edx, dword [esp + 0x148]
mov ebx, dword [esp + 0x144]
mov esi, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebx
mov edx, dword [esp + 0x14c]
mov ebx, dword [esp + 0x64]
mov esi, dword [esp + 0x148]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x150]
mov edx, dword [esp + 0x44]
cmp ebx, edx
jle 0x4e15b4
shl edx, 3
mov ebp, dword [esp + 0x70]
cmp ebp, edx
jb 0x4e1b14
mov eax, dword [ecx + 0x28]
mov dword [esp], esi
sub ebp, edx
mov dword [esp + 0x7c], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, edi
mov dword [esp + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], ecx
movsd xmm0, qword [esp + 0x8c]
mov ecx, dword [esp + 0x64]
mov eax, dword [esp + 0x44]
cmp ecx, eax
ja 0x4e14f1
jmp 0x4e1b0f
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0xa066c615
jne 0x4e0d4f
lea ecx, [0xa68f80]
cmp ecx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x144]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 0x148]
mov dword [esp], edx
mov ebx, dword [esp + 0x10c]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x70]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call ecx
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x150]
mov word [ecx], ax
mov eax, ecx
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
lea ecx, [0xa732c0]
cmp ecx, edx
jne 0x4e0d4f
mov ecx, dword [esp + 0x10c]
movzx ecx, byte [ecx]
mov eax, dword [esp + 0x150]
mov byte [eax], cl
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0x734d2a16
ja 0x4e17b1
cmp ebx, 0x6e0df0d1
je 0x4e1782
cmp ebx, 0x734d2a16
jne 0x4e0d4f
lea ebx, [0xa7abc0]
cmp ebx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x150]
mov ebx, dword [eax + 4]
mov dword [esp + 0x68], ebx
mov ebp, dword [eax]
mov dword [esp + 0x104], ebp
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0xac], eax
xor eax, eax
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0xac]
jmp 0x4e1717
mov ebp, dword [esp + 0x104]
mov dword [ebp + ecx*4], eax
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x148]
mov ebx, dword [esp + 0x144]
mov esi, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebx
mov edx, dword [esp + 0x14c]
mov ebx, dword [esp + 0x68]
mov esi, dword [esp + 0x148]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x150]
mov edx, dword [esp + 0x48]
cmp edx, ebx
jge 0x4e1772
shl edx, 2
mov ebp, dword [esp + 0x70]
cmp ebp, edx
jb 0x4e1b6a
mov eax, dword [ecx + 0x24]
mov dword [esp], esi
sub ebp, edx
mov dword [esp + 0x7c], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, edi
mov dword [esp + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x68]
cmp ecx, edx
jb 0x4e16ca
jmp 0x4e1b61
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
lea ecx, [0xa5ea80]
cmp ecx, edx
jne 0x4e0d4f
mov ecx, dword [esp + 0x10c]
movzx ecx, byte [ecx]
test cl, cl
setne cl
mov eax, dword [esp + 0x150]
mov byte [eax], cl
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0x7ad3bff0
jne 0x4e18cf
lea ebx, [0xa78b40]
cmp ebx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x150]
mov ebx, dword [eax + 4]
mov dword [esp + 0x60], ebx
mov ebp, dword [eax]
mov dword [esp + 0xe8], ebp
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0xa4], eax
xor eax, eax
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xa4]
jmp 0x4e185a
mov ebp, dword [esp + 0xe8]
movss dword [ebp + eax*4], xmm0
inc eax
mov edx, dword [esp + 0x148]
mov ebx, dword [esp + 0x144]
mov esi, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebx
mov edx, dword [esp + 0x14c]
mov ebx, dword [esp + 0x60]
mov esi, dword [esp + 0x148]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x150]
mov edx, dword [esp + 0x40]
cmp edx, ebx
jge 0x4e18bf
shl edx, 2
mov ebp, dword [esp + 0x70]
cmp ebp, edx
jb 0x4e1b22
mov eax, dword [ecx + 0x24]
mov dword [esp], esi
sub ebp, edx
mov dword [esp + 0x7c], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, edi
mov dword [esp + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edx
call eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x78], eax
movss xmm0, dword [esp + 0x78]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x60]
cmp eax, ecx
jb 0x4e180d
jmp 0x4e1b1d
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0x8237d00c
jne 0x4e19e4
lea ebx, [0xa7ab80]
cmp ebx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x150]
mov ebx, dword [eax + 4]
mov dword [esp + 0x54], ebx
mov ebp, dword [eax]
mov dword [esp + 0xf4], ebp
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0x9c], eax
xor eax, eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x9c]
jmp 0x4e1979
mov ebp, dword [esp + 0xf4]
mov word [ebp + ecx*2], ax
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x148]
mov ebx, dword [esp + 0x144]
mov esi, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebx
mov edx, dword [esp + 0x14c]
mov ebx, dword [esp + 0x54]
mov esi, dword [esp + 0x148]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x150]
mov edx, dword [esp + 0x34]
cmp edx, ebx
jge 0x4e19d4
shl edx, 1
mov ebp, dword [esp + 0x70]
cmp ebp, edx
jb 0x4e1b8c
mov eax, dword [ecx + 0x20]
mov dword [esp], esi
sub ebp, edx
mov dword [esp + 0x7c], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, edi
mov dword [esp + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edx
call eax
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x54]
cmp ecx, edx
jb 0x4e192b
jmp 0x4e1b83
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
cmp ebx, 0x88768e96
jne 0x4e0d4f
lea ebx, [0xa7ac00]
cmp ebx, edx
jne 0x4e0d4f
mov eax, dword [esp + 0x150]
mov ebx, dword [eax + 4]
mov dword [esp + 0x5c], ebx
mov ebp, dword [eax]
mov dword [esp + 0xf0], ebp
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0x94], eax
xor eax, eax
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x94]
jmp 0x4e1a8e
mov ebp, dword [esp + 0xf0]
lea esi, [ebp + edx*8]
mov dword [esi], eax
mov dword [esi + 4], ecx
lea eax, [edx + 1]
mov ecx, dword [esp + 0x148]
mov edx, dword [esp + 0x144]
mov esi, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, edx
mov edx, dword [esp + 0x14c]
mov esi, dword [esp + 0x148]
mov edi, dword [esp + 0x10c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x150]
mov edx, dword [esp + 0x3c]
cmp edx, ebx
jge 0x4e1aea
shl edx, 3
mov ebp, dword [esp + 0x70]
cmp ebp, edx
jb 0x4e1b46
mov eax, dword [ecx + 0x28]
mov dword [esp], esi
sub ebp, edx
mov dword [esp + 0x7c], ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and edx, ebp
add edx, edi
mov dword [esp + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edx
call eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x5c]
cmp edx, ebx
jb 0x4e1a40
jmp 0x4e1b3d
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4e0d2a
mov dword [esp + 0x154], eax
mov dword [esp + 0x158], ecx
add esp, 0x138
ret
call fcn.00460bc0
mov eax, edx
mov ecx, ebp
call fcn.00460c20
call fcn.00460bc0
mov eax, edx
mov ecx, ebp
call fcn.00460c20
mov eax, edx
mov ecx, ebx
call fcn.00460bc0
mov eax, edx
mov ecx, ebp
call fcn.00460c20
mov eax, edx
mov ecx, ebx
call fcn.00460bc0
mov eax, edx
mov ecx, ebp
call fcn.00460c20
mov eax, ecx
mov ecx, edx
call fcn.00460bc0
mov eax, edx
mov ecx, ebp
call fcn.00460c20
mov eax, ecx
mov ecx, edx
call fcn.00460bc0
mov eax, edx
mov ecx, ebp
call fcn.00460c20
mov eax, edx
call fcn.00460bc0
mov eax, edx
mov ecx, ebp
call fcn.00460c20
mov eax, ecx
mov ecx, edx
call fcn.00460bc0
mov eax, edx
mov ecx, ebp
call fcn.00460c20
mov eax, edi
call fcn.00460bc0
mov eax, edi
call fcn.00460bc0
nop
call fcn.0045f5f0
jmp fcn.004e0870