Function at 0x4b5630
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 0x4b69e3
sub esp, 0x138
mov eax, dword [esp + 0x14c]
mov dword [esp], eax
mov ecx, dword [esp + 0x150]
mov dword [esp + 4], ecx
call fcn.004b7a30
mov eax, dword [esp + 8]
test eax, eax
jne 0x4b5a03
mov ecx, dword [esp + 0x14c]
test ecx, ecx
je 0x4b59f1
nop
movzx edx, byte [0x61ec88]
test dl, dl
je 0x4b59e5
mov edx, dword [esp + 0x14c]
mov dword [0x61ec8c], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b59ce
mov eax, dword [esp + 0x150]
mov dword [0x61ec90], eax
mov dword [esp + 0x118], ecx
mov dword [esp + 0x11c], eax
mov edx, dword [esp + 0x118]
test edx, edx
je 0x4b59c1
nop
movzx ebx, byte [edx + 0xf]
mov ebp, ebx
and ebx, 0x1f
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x4b56f4
or ebx, 0x80
mov ebp, eax
nop
nop
mov esi, ebx
and ebx, 0x1f
cmp ebx, 0x16
je 0x4b5954
cmp ebx, 0x17
je 0x4b5903
mov ebx, 0xffffffff
test ebx, ebx
jge 0x4b57e9
mov dword [esp + 0x110], ecx
mov dword [esp + 0x114], ebp
mov eax, dword [esp + 0x110]
test eax, eax
je 0x4b57e0
lea ecx, [0x56a23c]
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, [0x53b2b1]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x1a
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.00445b20
mov eax, dword [esp + 0x14]
mov dword [esp + 0xe4], eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x28], ecx
lea edx, [0x51e5e0]
mov dword [esp], edx
call fcn.0040b6c0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x28]
mov dword [edi + 4], eax
mov eax, dword [0x63be10]
test eax, eax
jne 0x4b57d2
mov eax, dword [esp + 0xe4]
mov dword [edi], eax
lea eax, [0x56906c]
mov dword [esp + 0x154], eax
mov dword [esp + 0x158], edi
add esp, 0x138
ret
mov eax, dword [esp + 0xe4]
call fcn.0045a680
jmp 0x4b57b7
xor ecx, ecx
xor eax, eax
jmp 0x4b573f
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x24], esi
mov dword [esp + 0xdc], eax
mov dword [esp + 0xd8], edx
lea eax, [0x51b4a0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebx
call fcn.00442650
mov eax, dword [esp + 0xc]
mov dword [esp + 0x10c], eax
lea edi, [esp + 0x120]
xor eax, eax
call fcn.0045a8ea
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.00464800
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
test eax, eax
je 0x4b58b9
mov dword [esp + 0x154], ecx
mov dword [esp + 0x158], edx
add esp, 0x138
ret
lea eax, [esp + 0x120]
mov dword [esp], eax
mov eax, dword [esp + 0xd8]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0xc], eax
call fcn.004b6f40
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], 0
add esp, 0x138
ret
mov dword [esp + 0x80], esi
mov dword [esp + 0xe0], eax
mov dword [esp + 0xd4], edx
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], esi
call fcn.004b69f0
mov ebx, dword [esp + 0xc]
mov ecx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x150]
mov esi, dword [esp + 0x80]
mov edx, dword [esp + 0xd4]
mov eax, dword [esp + 0xe0]
jmp 0x4b5714
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], esi
call fcn.004a4370
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.004b69f0
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 0x4b5714
mov ebp, eax
xor ebx, ebx
xor edx, edx
xor eax, eax
jmp 0x4b56f6
lea edi, [0x61ec90]
mov eax, dword [esp + 0x150]
call fcn.0045a680
jmp 0x4b56c0
mov eax, dword [esp + 0x150]
jmp 0x4b56c0
mov ebp, dword [esp + 0x150]
xor ebx, ebx
xor edx, edx
xor eax, eax
jmp 0x4b56f6
mov dword [esp + 0x70], eax
lea ecx, [0x51b4a0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00442650
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.00464800
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
test eax, eax
jne 0x4b693f
mov edx, dword [esp + 0x14c]
test edx, edx
je 0x4b6933
mov edx, dword [edx + 8]
cmp edx, 0x6b581726
ja 0x4b6137
cmp edx, 0x2069b53f
jbe 0x4b5da3
cmp edx, 0x30c31d62
ja 0x4b5c96
cmp edx, 0x20e38ee7
je 0x4b5b95
cmp edx, 0x26b80717
je 0x4b5b2f
cmp edx, 0x30c31d62
jne 0x4b5b26
lea edx, [0x515e80]
mov ebx, dword [esp + 0x14c]
cmp edx, ebx
jne 0x4b5b22
mov edx, dword [esp + 0x150]
mov ecx, dword [edx + 4]
mov edx, dword [edx]
mov ebp, dword [esp + 0x70]
mov esi, dword [esp + 0x10c]
xor eax, eax
jmp 0x4b5aea
mov byte [edx + eax], bl
inc eax
mov ebx, edi
cmp ebp, eax
jle 0x4b5afd
mov edi, ebx
movzx ebx, byte [eax + esi]
cmp eax, ecx
jb 0x4b5ae4
jmp 0x4b69d8
test ebp, ebp
je 0x4b5679
mov dword [esp + 0x154], 0
mov dword [esp + 0x158], 0
add esp, 0x138
ret
xor ebp, ebp
jmp 0x4b5afd
mov ebx, dword [esp + 0x14c]
jmp 0x4b5b22
lea ecx, [0x5124e0]
mov edx, dword [esp + 0x14c]
cmp ecx, edx
jne 0x4b5b91
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 + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x150]
mov dword [edx + 4], eax
mov dword [edx], ecx
mov ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4b5afd
mov ebx, edx
jmp 0x4b5b22
lea edx, [0x516a00]
mov ebx, dword [esp + 0x14c]
cmp edx, ebx
jne 0x4b5b22
mov edx, dword [esp + 0x150]
mov ebp, dword [edx + 4]
mov dword [esp + 0x60], ebp
mov edx, dword [edx]
mov dword [esp + 0xf4], edx
mov esi, dword [esp + 0x148]
mov eax, dword [esp + 0x144]
mov ecx, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov dword [esp + 0xcc], eax
xor eax, eax
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0xcc]
jmp 0x4b5c31
mov ebx, dword [esp + 0xf4]
mov word [ebx + ecx*2], ax
lea eax, [ecx + 1]
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
mov ebp, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebp
mov edx, ebx
mov ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x60]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x144]
mov ebx, dword [esp + 0x48]
cmp ebx, ebp
jge 0x4b5c88
shl ebx, 1
cmp edi, ebx
jb 0x4b69bf
mov edx, dword [eax + 0x20]
mov dword [esp], esi
sub edi, ebx
mov dword [esp + 0x7c], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ebx, edi
add ebx, ecx
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call edx
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x60]
cmp ecx, edx
jb 0x4b5bf0
jmp 0x4b69b6
mov ebx, dword [esp + 0x14c]
mov ebp, edi
jmp 0x4b5afd
cmp edx, 0x382e7edf
jne 0x4b5cfd
lea ecx, [0x516ac0]
mov edx, dword [esp + 0x14c]
cmp ecx, edx
jne 0x4b5cf6
mov ecx, dword [esp + 0x150]
mov ebx, dword [ecx + 4]
mov ecx, dword [ecx]
mov ebp, dword [esp + 0x70]
cmp ebp, ebx
jge 0x4b5cf0
mov eax, ebp
mov ebx, dword [esp + 0x10c]
cmp ebx, ecx
je 0x4b5ce0
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
call fcn.0045aff0
mov ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4b5afd
mov eax, ebp
mov ebp, ebx
jmp 0x4b5cc5
mov ebx, edx
jmp 0x4b5b22
cmp edx, 0x5fcadfef
jne 0x4b5d34
lea ecx, [0x512520]
mov edx, dword [esp + 0x14c]
cmp ecx, edx
jne 0x4b5cf6
mov ecx, dword [esp + 0x10c]
movzx ecx, byte [ecx]
mov esi, dword [esp + 0x150]
mov byte [esi], cl
mov ebx, edx
mov ebp, dword [esp + 0x70]
jmp 0x4b5afd
cmp edx, 0x6b581726
jne 0x4b5d97
lea ecx, [0x5124a0]
mov edx, dword [esp + 0x14c]
cmp ecx, edx
jne 0x4b5cf6
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 ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4b5afd
mov edx, dword [esp + 0x14c]
jmp 0x4b5cf6
cmp edx, 0x1e2f74f8
jbe 0x4b605a
cmp edx, 0x1f1d91d4
jne 0x4b5ebb
lea edx, [0x516a40]
mov ebx, dword [esp + 0x14c]
cmp edx, ebx
jne 0x4b5b22
mov edx, dword [esp + 0x150]
mov ebp, dword [edx + 4]
mov dword [esp + 0x50], ebp
mov edx, dword [edx]
mov dword [esp + 0x104], edx
mov esi, dword [esp + 0x148]
mov eax, dword [esp + 0x144]
mov ecx, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov dword [esp + 0xc4], eax
xor eax, eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0xc4]
jmp 0x4b5e56
mov ebx, dword [esp + 0x104]
mov dword [ebx + ecx*4], eax
lea eax, [ecx + 1]
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
mov ebp, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebp
mov edx, ebx
mov ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x50]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x144]
mov ebx, dword [esp + 0x44]
cmp ebx, ebp
jge 0x4b5ead
shl ebx, 2
cmp edi, ebx
jb 0x4b699d
mov edx, dword [eax + 0x24]
mov dword [esp], esi
sub edi, ebx
mov dword [esp + 0x7c], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ebx, edi
add ebx, ecx
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x50]
cmp ecx, edx
jb 0x4b5e16
jmp 0x4b6994
mov ebx, dword [esp + 0x14c]
mov ebp, edi
jmp 0x4b5afd
cmp edx, 0x1ffee651
je 0x4b5fec
cmp edx, 0x2069b53f
jne 0x4b5fe0
lea edx, [0x516a80]
mov ebx, dword [esp + 0x14c]
cmp edx, ebx
jne 0x4b5b22
mov edx, dword [esp + 0x150]
mov ebp, dword [edx + 4]
mov dword [esp + 0x54], ebp
mov edx, dword [edx]
mov dword [esp + 0xf0], edx
mov esi, dword [esp + 0x148]
mov eax, dword [esp + 0x144]
mov ecx, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov dword [esp + 0xbc], eax
xor eax, eax
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xbc]
jmp 0x4b5f77
mov ebp, dword [esp + 0xf0]
lea esi, [ebp + edx*8 + 4]
mov dword [esi], eax
lea eax, [ebp + edx*8]
mov dword [eax], ecx
lea eax, [edx + 1]
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
mov edx, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, edx
mov edx, ebp
mov ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x54]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x144]
mov ebx, dword [esp + 0x4c]
cmp ebx, ebp
jge 0x4b5fd2
shl ebx, 3
cmp edi, ebx
jb 0x4b6979
mov edx, dword [eax + 0x28]
mov dword [esp], esi
sub edi, ebx
mov dword [esp + 0x7c], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ebx, edi
add ebx, ecx
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call edx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x54]
cmp edx, ebx
jb 0x4b5f2e
jmp 0x4b6970
mov ebx, dword [esp + 0x14c]
mov ebp, edi
jmp 0x4b5afd
mov ebx, dword [esp + 0x14c]
jmp 0x4b5b22
lea ecx, [0x5120e0]
mov edx, dword [esp + 0x14c]
cmp ecx, edx
jne 0x4b6053
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 ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4b5afd
mov ebx, edx
jmp 0x4b5b22
cmp edx, 0xc66cd3
jne 0x4b60c4
lea ecx, [0x515160]
mov edx, dword [esp + 0x14c]
cmp ecx, edx
jne 0x4b60bd
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 ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4b5afd
mov ebx, edx
jmp 0x4b5b22
cmp edx, 0x1e2f74f8
jne 0x4b612e
lea ecx, [0x5151a0]
mov edx, dword [esp + 0x14c]
cmp ecx, edx
jne 0x4b60bd
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 + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x150]
mov dword [edx + 4], eax
mov dword [edx], ecx
mov ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4b5afd
mov edx, dword [esp + 0x14c]
jmp 0x4b60bd
cmp edx, 0x88768e96
jbe 0x4b6485
cmp edx, 0xa066c615
jbe 0x4b62a9
cmp edx, 0xba56ad13
je 0x4b622a
cmp edx, 0xe781e5b1
jne 0x4b61b5
lea edx, [0x515b80]
mov ebx, dword [esp + 0x14c]
cmp edx, ebx
jne 0x4b5b22
mov edx, dword [esp + 0x150]
mov ecx, dword [edx + 4]
mov edx, dword [edx]
mov ebp, dword [esp + 0x70]
mov esi, dword [esp + 0x10c]
xor eax, eax
jmp 0x4b619e
test bl, bl
setne bl
mov byte [edx + eax], bl
inc eax
mov ebx, edi
cmp ebp, eax
jle 0x4b5afd
mov edi, ebx
movzx ebx, byte [eax + esi]
cmp eax, ecx
jb 0x4b6193
jmp 0x4b69dd
cmp edx, 0xee92f42e
jne 0x4b6221
lea ecx, [0x515120]
mov edx, dword [esp + 0x14c]
cmp ecx, edx
jne 0x4b621a
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 ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4b5afd
mov ebx, edx
jmp 0x4b5b22
mov edx, dword [esp + 0x14c]
jmp 0x4b621a
lea ecx, [0x512120]
mov edx, dword [esp + 0x14c]
cmp ecx, edx
jne 0x4b62a2
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 + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x88], eax
mov dword [esp + 0x84], ecx
movsd xmm0, qword [esp + 0x84]
mov eax, dword [esp + 0x150]
movsd qword [eax], xmm0
mov ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4b5afd
mov ebx, edx
jmp 0x4b5b22
cmp edx, 0x9ad926a8
je 0x4b644f
cmp edx, 0x9c373330
jne 0x4b63da
lea edx, [0x515d00]
mov ebx, dword [esp + 0x14c]
cmp edx, ebx
jne 0x4b5b22
mov edx, dword [esp + 0x150]
mov ebp, dword [edx + 4]
mov dword [esp + 0x5c], ebp
mov edx, dword [edx]
mov dword [esp + 0xec], edx
mov esi, dword [esp + 0x148]
mov eax, dword [esp + 0x144]
mov ecx, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov dword [esp + 0xb4], eax
xor eax, eax
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xb4]
jmp 0x4b635a
mov edx, dword [esp + 0xec]
movsd qword [edx + eax*8], xmm0
inc eax
mov esi, dword [esp + 0x148]
mov ebx, dword [esp + 0x144]
mov ebp, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebp
mov ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x5c]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x144]
mov ebx, dword [esp + 0x40]
cmp ebx, ebp
jge 0x4b63cc
shl ebx, 3
cmp edi, ebx
jb 0x4b6959
mov edx, dword [eax + 0x28]
mov dword [esp], esi
sub edi, ebx
mov dword [esp + 0x7c], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ebx, edi
add ebx, ecx
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call edx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x90], eax
mov dword [esp + 0x8c], ecx
movsd xmm0, qword [esp + 0x8c]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x5c]
cmp eax, ecx
jb 0x4b631c
jmp 0x4b6954
mov ebx, dword [esp + 0x14c]
mov ebp, edi
jmp 0x4b5afd
cmp edx, 0xa066c615
jne 0x4b6446
lea ecx, [0x512460]
mov edx, dword [esp + 0x14c]
cmp ecx, edx
jne 0x4b643f
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 ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x70]
jmp 0x4b5afd
mov ebx, edx
jmp 0x4b5b22
mov edx, dword [esp + 0x14c]
jmp 0x4b643f
lea ecx, [0x5151e0]
mov edx, dword [esp + 0x14c]
cmp ecx, edx
jne 0x4b647e
mov ecx, dword [esp + 0x10c]
movzx ecx, byte [ecx]
mov eax, dword [esp + 0x150]
mov byte [eax], cl
mov ebx, edx
mov ebp, dword [esp + 0x70]
jmp 0x4b5afd
mov ebx, edx
jmp 0x4b5b22
cmp edx, 0x734d2a16
ja 0x4b65f0
cmp edx, 0x6e0df0d1
je 0x4b65b5
cmp edx, 0x734d2a16
jne 0x4b65a9
lea edx, [0x515e00]
mov ebx, dword [esp + 0x14c]
cmp edx, ebx
jne 0x4b5b22
mov edx, dword [esp + 0x150]
mov ebp, dword [edx + 4]
mov dword [esp + 0x64], ebp
mov edx, dword [edx]
mov dword [esp + 0xe8], edx
mov esi, dword [esp + 0x148]
mov eax, dword [esp + 0x144]
mov ecx, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov dword [esp + 0xac], eax
xor eax, eax
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xac]
jmp 0x4b6544
mov ebx, dword [esp + 0xe8]
mov dword [ebx + edx*4], eax
lea eax, [edx + 1]
mov esi, dword [esp + 0x148]
mov edx, dword [esp + 0x144]
mov ebp, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebp
mov edx, ebx
mov ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x64]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x144]
mov ebx, dword [esp + 0x30]
cmp ebp, ebx
jle 0x4b659b
shl ebx, 2
cmp edi, ebx
jb 0x4b69ad
mov edx, dword [eax + 0x24]
mov dword [esp], esi
sub edi, ebx
mov dword [esp + 0x7c], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ebx, edi
add ebx, ecx
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x30]
cmp ecx, edx
ja 0x4b6504
jmp 0x4b69a6
mov ebx, dword [esp + 0x14c]
mov ebp, edi
jmp 0x4b5afd
mov ebx, dword [esp + 0x14c]
jmp 0x4b5b22
lea ecx, [0x511ba0]
mov edx, dword [esp + 0x14c]
cmp ecx, edx
jne 0x4b65e9
mov ecx, dword [esp + 0x10c]
movzx ecx, byte [ecx]
test cl, cl
setne cl
mov esi, dword [esp + 0x150]
mov byte [esi], cl
mov ebx, edx
mov ebp, dword [esp + 0x70]
jmp 0x4b5afd
mov ebx, edx
jmp 0x4b5b22
cmp edx, 0x7ad3bff0
jne 0x4b6704
lea edx, [0x515cc0]
mov ebx, dword [esp + 0x14c]
cmp edx, ebx
jne 0x4b5b22
mov edx, dword [esp + 0x150]
mov ebp, dword [edx + 4]
mov dword [esp + 0x6c], ebp
mov edx, dword [edx]
mov dword [esp + 0xfc], edx
mov esi, dword [esp + 0x148]
mov eax, dword [esp + 0x144]
mov ecx, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov dword [esp + 0xa4], eax
xor eax, eax
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xa4]
jmp 0x4b6695
mov edx, dword [esp + 0xfc]
movss dword [edx + eax*4], xmm0
inc eax
mov esi, dword [esp + 0x148]
mov ebx, dword [esp + 0x144]
mov ebp, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebp
mov ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x6c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x144]
mov ebx, dword [esp + 0x3c]
cmp ebp, ebx
jle 0x4b66f6
shl ebx, 2
cmp edi, ebx
jb 0x4b6967
mov edx, dword [eax + 0x24]
mov dword [esp], esi
sub edi, ebx
mov dword [esp + 0x7c], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ebx, edi
add ebx, ecx
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call edx
mov eax, dword [esp + 0x10]
mov dword [esp + 0x78], eax
movss xmm0, dword [esp + 0x78]
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x3c]
cmp ecx, eax
ja 0x4b6657
jmp 0x4b6962
mov ebx, dword [esp + 0x14c]
mov ebp, edi
jmp 0x4b5afd
cmp edx, 0x8237d00c
jne 0x4b6811
lea edx, [0x515dc0]
mov ebx, dword [esp + 0x14c]
cmp edx, ebx
jne 0x4b5b22
mov edx, dword [esp + 0x150]
mov ebp, dword [edx + 4]
mov dword [esp + 0x68], ebp
mov edx, dword [edx]
mov dword [esp + 0x100], edx
mov esi, dword [esp + 0x148]
mov eax, dword [esp + 0x144]
mov ecx, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov dword [esp + 0x9c], eax
xor eax, eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x9c]
jmp 0x4b67ac
mov ebx, dword [esp + 0x100]
mov word [ebx + edx*2], ax
lea eax, [edx + 1]
mov esi, dword [esp + 0x148]
mov edx, dword [esp + 0x144]
mov ebp, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebp
mov edx, ebx
mov ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x68]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x144]
mov ebx, dword [esp + 0x34]
cmp ebp, ebx
jle 0x4b6803
shl ebx, 1
cmp edi, ebx
jb 0x4b69cf
mov edx, dword [eax + 0x20]
mov dword [esp], esi
sub edi, ebx
mov dword [esp + 0x7c], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ebx, edi
add ebx, ecx
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call edx
movzx eax, word [esp + 0x10]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x34]
cmp ecx, edx
ja 0x4b676b
jmp 0x4b69c8
mov ebx, dword [esp + 0x14c]
mov ebp, edi
jmp 0x4b5afd
cmp edx, 0x88768e96
jne 0x4b6927
lea edx, [0x515e40]
mov ebx, dword [esp + 0x14c]
cmp edx, ebx
jne 0x4b5b22
mov edx, dword [esp + 0x150]
mov ebp, dword [edx + 4]
mov dword [esp + 0x58], ebp
mov edx, dword [edx]
mov dword [esp + 0xf8], edx
mov esi, dword [esp + 0x148]
mov eax, dword [esp + 0x144]
mov ecx, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov dword [esp + 0x94], eax
xor eax, eax
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x94]
jmp 0x4b68c1
mov ebp, dword [esp + 0xf8]
lea esi, [ebp + ebx*8 + 4]
mov dword [esi], eax
lea eax, [ebp + ebx*8]
mov dword [eax], ecx
lea eax, [ebx + 1]
mov esi, dword [esp + 0x148]
mov ecx, dword [esp + 0x144]
mov ebx, dword [esp + 0x10c]
mov edi, dword [esp + 0x70]
mov ecx, ebx
mov edx, ebp
mov ebx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x58]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x144]
mov ebx, dword [esp + 0x38]
cmp ebp, ebx
jle 0x4b6919
shl ebx, 3
cmp edi, ebx
jb 0x4b698b
mov edx, dword [eax + 0x28]
mov dword [esp], esi
sub edi, ebx
mov dword [esp + 0x7c], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ebx, edi
add ebx, ecx
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebx
call edx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x58]
mov ebx, dword [esp + 0x38]
cmp edx, ebx
ja 0x4b6878
jmp 0x4b6982
mov ebx, dword [esp + 0x14c]
mov ebp, edi
jmp 0x4b5afd
mov ebx, dword [esp + 0x14c]
jmp 0x4b5b22
mov ebx, dword [esp + 0x14c]
jmp 0x4b5b22
mov dword [esp + 0x154], ecx
mov dword [esp + 0x158], edx
add esp, 0x138
ret
call fcn.0045a700
mov eax, ebx
mov ecx, edi
call fcn.0045a760
call fcn.0045a700
mov eax, ebx
mov ecx, edi
call fcn.0045a760
mov eax, edx
mov ecx, ebx
call fcn.0045a700
mov eax, ebx
mov ecx, edi
call fcn.0045a760
mov eax, ebx
mov ecx, edx
call fcn.0045a700
mov eax, ebx
mov ecx, edi
call fcn.0045a760
mov eax, ecx
mov ecx, edx
call fcn.0045a700
mov eax, ebx
mov ecx, edi
call fcn.0045a760
mov eax, edx
call fcn.0045a700
mov eax, ebx
mov ecx, edi
call fcn.0045a760
mov eax, ecx
mov ecx, edx
call fcn.0045a700
mov eax, ebx
mov ecx, edi
call fcn.0045a760
mov eax, edx
call fcn.0045a700
mov eax, ebx
mov ecx, edi
call fcn.0045a760
call fcn.0045a700
call fcn.0045a700
nop
call fcn.00459120
jmp fcn.004b5630