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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xc0]
cmp eax, dword [ecx + 8]
jbe 0x48bb5f
sub esp, 0x140
mov ebx, dword [esp + 0x14c]
test ebx, 0x200
jne 0x48b699
test ebx, 0x80
je 0x48b68d
mov ebx, dword [esp + 0x148]
mov ebx, dword [ebx]
mov eax, dword [esp + 0x144]
xor ecx, ecx
xor edx, edx
xor ebp, ebp
xor esi, esi
test ebx, ebx
je 0x48bb46
mov dword [esp + 0xe0], ebx
mov dword [esp + 0x3c], edx
mov dword [esp + 0xc0], ebp
mov dword [esp + 0xbc], esi
mov dword [esp + 0xd0], ecx
mov dword [esp + 0xcc], eax
mov edi, dword [esp + 0x154]
cmp edi, 9
je 0x48b634
mov dword [esp + 0xa8], eax
xor eax, eax
mov byte [esp + 0x2b], al
mov eax, dword [esp + 0xa8]
movzx ebx, byte [eax + 0xf]
and ebx, 0x1f
cmp ebx, 0x13
jne 0x48bb2e
movzx ebx, word [eax + 0x20]
movzx ebp, byte [esp + 0x2b]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x48b5f8
movzx esi, word [eax + 0x22]
test si, 0x8000
je 0x48bb16
mov esi, dword [esp + 0x15c]
cmp esi, ebx
jl 0x48bafe
jg 0x48bae6
mov dword [esp + 0x60], ebx
test esi, esi
jle 0x48a99d
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x158]
mov dword [esp + 0x10c], eax
mov dword [esp + 0x98], ecx
xor ecx, ecx
mov dword [esp + 0x84], ecx
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0x98]
jmp 0x48a97b
add ebp, 0xc
mov dword [esp + 0x10c], ebp
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x60]
movzx ebp, byte [esp + 0x2b]
mov ebp, dword [esp + 0x10c]
mov ebx, dword [ebp + 8]
test ebx, 0x1f
je 0x48ba4d
mov ebx, dword [esp + 0x84]
inc ebx
cmp ebx, esi
jl 0x48a961
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x158]
mov dword [esp + 0x90], eax
xor eax, eax
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x90]
jmp 0x48aa04
mov eax, dword [esp + 0x58]
inc eax
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x158]
mov ebx, dword [esp + 0x15c]
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x158]
mov esi, dword [esp + 0x15c]
mov edi, dword [esp + 0x154]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0xcc]
mov edi, dword [esp + 0x58]
cmp edi, ebx
jge 0x48aaf0
cmp edi, esi
jae 0x48ba44
lea eax, [edi + edi*2]
mov ecx, dword [ebp + eax*4 + 8]
mov edx, dword [ebp + eax*4 + 4]
mov eax, dword [ebp + eax*4]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00490af0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xcc]
movzx ebx, byte [edx + 0xf]
and ebx, 0x1f
cmp ebx, 0x13
jne 0x48ba2c
movzx ebx, byte [edx + 0xc]
test bl, 1
je 0x48aae6
mov ebx, 0x34
movzx ebp, word [edx + 0x20]
test bp, bp
jne 0x48aacd
xor ebx, ebx
xor ebp, ebp
mov esi, dword [esp + 0x58]
cmp esi, ebx
jae 0x48ba17
mov ebx, dword [ebp + esi*4]
test ebx, ebx
je 0x48aac7
lea ebp, [0xab2080]
mov dword [esp + 0xb4], eax
mov dword [esp + 0x44], ebp
mov dword [esp + 0xc8], ebx
mov dword [esp + 0x2c], ecx
mov edx, dword [ecx + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
call edx
movzx eax, byte [esp + 0xc]
test al, al
jne 0x48a9be
jmp 0x48b916
xor ebp, ebp
xor ebx, ebx
jmp 0x48aa8f
movzx ebp, bp
add ebx, edx
cmp ebp, 0x100000
ja 0x48ba20
mov esi, ebx
mov ebx, ebp
mov ebp, esi
jmp 0x48aa75
mov ebx, 0x24
jmp 0x48aa68
movzx edi, byte [esp + 0x2b]
xchg edi, eax
test al, al
xchg edi, eax
je 0x48b237
movzx ebx, byte [eax + 0xf]
and ebx, 0x1f
cmp ebx, 0x13
jne 0x48b796
movzx ebx, word [eax + 0x20]
movzx edi, bx
cmp edi, esi
jne 0x48b77e
mov dword [esp + 0x15c], esi
mov dword [esp + 0x108], ebp
nop
movzx ebp, word [eax + 0x22]
and ebp, 0x7fff
test bp, bp
jne 0x48b217
xor ebx, ebx
mov dword [esp + 0x48], ebx
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00488f20
mov eax, dword [esp + 8]
mov dword [esp + 0xd8], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x18]
mov dword [esp + 0xdc], edx
mov ebx, dword [esp + 0x48]
test ebx, ebx
jne 0x48b200
mov dword [esp], edx
call fcn.00463380
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
lea edx, [0x92cb80]
cmp ecx, edx
jne 0x48b753
mov ebx, dword [esp + 0xd0]
test ebx, ebx
je 0x48b1f9
mov ebx, dword [esp + 0xbc]
movzx ebx, byte [ebx + 0xf]
mov ebp, ebx
and ebx, 0x1f
cmp ebx, 0x14
jne 0x48b18a
test byte [eax], al
mov ebx, dword [0xe8ff30]
mov ebp, dword [esp + 0xc0]
mov ebp, dword [ebp + 4]
test ebx, ebx
jne 0x48b17a
mov dword [eax], ebp
mov ecx, 4
mov dword [esp + 0xd4], eax
mov ebx, dword [esp + 0x15c]
test ebx, ebx
jle 0x48ad54
mov ebp, dword [esp + 0xcc]
mov esi, dword [esp + 0x108]
xor edi, edi
jmp 0x48ac36
mov ecx, dword [esp + 0x10c]
lea esi, [ecx + 0xc]
mov ecx, dword [esp + 0xcc]
lea edx, [0x92cb80]
mov ebp, ecx
mov edi, ebx
mov ecx, eax
mov eax, dword [esp + 0xd4]
mov ebx, dword [esp + 0x15c]
mov dword [esp + 0x10c], esi
mov dword [esp + 0x5c], edi
mov dword [esp + 0x80], ecx
mov ebx, dword [esi + 8]
mov dword [esp + 0x7c], ebx
mov edi, dword [esi + 4]
mov dword [esp + 0x104], edi
mov esi, dword [esi]
mov dword [esp + 0x100], esi
nop
test ebx, ebx
jne 0x48b169
mov dword [esp], ebx
call fcn.0048a010
mov ebx, dword [esp + 0xcc]
movzx ebp, byte [ebx + 0xf]
and ebp, 0x1f
cmp ebp, 0x13
jne 0x48b73b
movzx ebp, byte [ebx + 0xc]
xchg ebp, eax
test al, 1
xchg ebp, eax
je 0x48b15f
mov eax, 0x34
movzx ebp, word [ebx + 0x20]
test bp, bp
jne 0x48b144
xor eax, eax
xor ecx, ecx
mov edx, dword [esp + 0x5c]
cmp edx, eax
jae 0x48b728
mov eax, dword [ecx + edx*4]
test eax, eax
je 0x48b13b
lea ecx, [0xab2080]
lea ebp, [0xab2080]
cmp ecx, ebp
jne 0x48b70c
movzx ecx, byte [eax + 0xd]
mov esi, dword [esp + 0x80]
lea esi, [esi + ecx - 1]
dec ecx
not ecx
and ecx, esi
mov dword [esp + 0x38], ecx
mov esi, dword [eax]
test esi, esi
jne 0x48b06a
mov ecx, dword [esp + 0x100]
mov dword [esp], ecx
mov ecx, dword [esp + 0x104]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 8], ecx
lea ecx, [0x9d7ca6]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 0x12
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0
call fcn.00491ac0
mov eax, dword [esp + 0x38]
mov ebx, dword [esp + 0x5c]
inc ebx
mov ebp, dword [esp + 0x15c]
cmp ebx, ebp
jl 0x48ac0b
mov eax, dword [esp + 0xd8]
mov ecx, dword [eax]
mov dword [esp], eax
mov edx, dword [esp + 0xe0]
mov dword [esp + 4], edx
mov edx, dword [esp + 0xd4]
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x10], ecx
call fcn.00455280
movzx eax, byte [0xe8fad7]
test al, al
jne 0x48b05a
mov eax, dword [esp + 0x48]
test eax, eax
je 0x48b016
mov eax, dword [esp + 0xd8]
mov dword [esp], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 4], eax
mov dword [esp + 8], 0
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0xc], ecx
call fcn.004115e0
lea eax, [0x9c9560]
mov dword [esp], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00440170
mov eax, dword [esp + 0xc]
mov dword [esp + 0x104], eax
xor ecx, ecx
mov edx, dword [esp + 0x4c]
jmp 0x48ae24
mov eax, dword [esp + 0x40]
mov eax, dword [eax + 0x7c]
mov ecx, dword [esp + 0xc4]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 0x68]
lea ecx, [eax + 1]
mov eax, dword [esp + 4]
mov edx, dword [esp + 0x34]
add edx, eax
mov eax, dword [esp + 0x104]
mov ebx, dword [esp + 0x48]
cmp ecx, ebx
jge 0x48affa
mov dword [esp + 0x68], ecx
mov dword [esp + 0x4c], edx
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00484f50
mov eax, dword [esp + 8]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0xc4], ecx
mov edx, dword [eax + 0x10]
mov dword [esp], ecx
call edx
mov eax, dword [esp + 4]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx + 0x7c]
mov ebx, dword [esp + 0xc4]
mov dword [esp], ebx
call edx
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x4c]
lea ecx, [ecx + eax - 1]
dec eax
not eax
and eax, ecx
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 4]
test ecx, ecx
je 0x48af58
mov eax, dword [esp + 0x40]
mov ecx, dword [eax + 0x50]
mov edx, dword [esp + 0xc4]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov dword [esp + 0x78], eax
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx + 0x84]
mov ebx, dword [esp + 0xc4]
mov dword [esp], ebx
call edx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0xd4]
lea ebx, [edx + ecx]
mov ebp, dword [esp + 0x68]
mov esi, dword [esp + 0x48]
cmp ebp, esi
jae 0x48b703
mov edi, edx
mov edx, dword [esp + 0x78]
or edx, 0x80
lea esi, [ebp + ebp*2]
mov ecx, dword [esp + 0x104]
mov dword [ecx + esi*4 + 8], edx
mov edx, dword [0xe8ff30]
lea ebp, [ecx + esi*4]
mov dword [esp + 0xfc], ebp
lea ebp, [ecx + esi*4 + 4]
test edx, edx
jne 0x48af3a
mov dword [ecx + esi*4], eax
mov dword [ecx + esi*4 + 4], ebx
jmp 0x48adf9
mov edx, edi
mov edi, dword [esp + 0xfc]
call fcn.00456ab0
mov edi, ebp
mov eax, ebx
call fcn.00456ab0
mov edi, edx
jmp 0x48adf9
mov eax, dword [esp + 0x40]
mov dword [esp], eax
mov ecx, dword [esp + 0xc4]
mov dword [esp + 4], ecx
call fcn.00491950
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0x68]
mov ebp, dword [esp + 0x48]
cmp ebx, ebp
jae 0x48b6fa
mov dword [esp + 0xf8], ecx
lea esi, [ebx + ebx*2]
mov edi, ebp
mov ebp, dword [esp + 0x104]
mov dword [ebp + esi*4 + 8], eax
mov eax, ebx
mov ebx, dword [0xe8ff30]
lea ecx, [ebp + esi*4]
mov dword [esp + 0xf4], ecx
lea ecx, [ebp + esi*4 + 4]
test ebx, ebx
jne 0x48afd1
mov dword [ebp + esi*4], edx
mov ecx, dword [esp + 0xf8]
mov dword [ebp + esi*4 + 4], ecx
jmp 0x48adf9
mov ebx, edi
mov edi, dword [esp + 0xf4]
mov esi, eax
mov eax, edx
call fcn.00456ab0
mov edi, ecx
mov eax, dword [esp + 0xf8]
call fcn.00456ab0
mov eax, esi
mov edi, ebx
jmp 0x48adf9
mov dword [esp + 0x164], eax
mov dword [esp + 0x168], ebx
mov dword [esp + 0x16c], ebx
add esp, 0x140
ret
mov eax, dword [esp + 0xd8]
mov dword [esp], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 4], eax
call fcn.004115a0
mov eax, dword [esp + 0xdc]
mov dword [esp], eax
lea eax, [0x92cb80]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 8], eax
call fcn.004632e0
xor ebx, ebx
xor eax, eax
jmp 0x48affa
call fcn.00417760
mov eax, dword [esp + 0x48]
test eax, eax
jmp 0x48ad9c
mov dword [esp + 0x50], esi
mov dword [esp + 0xb0], eax
mov edx, dword [esp + 0x100]
mov dword [esp], edx
mov edx, dword [esp + 0x104]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], edx
lea edx, [0x9d7ca6]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], 0x12
mov dword [esp + 0x14], eax
mov ebx, dword [esp + 0xd4]
lea ebp, [ebx + ecx]
mov dword [esp + 0xe8], ebp
mov dword [esp + 0x18], ebp
call fcn.00491ac0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
test ecx, 0x80
jne 0x48b110
mov ebx, dword [0xe8ff30]
test ebx, ebx
jne 0x48b0f7
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0xd4]
mov dword [ebp + ebx], eax
mov esi, dword [esp + 0x50]
lea eax, [ebx + esi]
jmp 0x48ad40
mov edi, dword [esp + 0xe8]
call fcn.00456ab0
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0xd4]
jmp 0x48b0eb
mov ecx, dword [esp + 0xb0]
mov dword [esp], ecx
mov ecx, dword [esp + 0xe8]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.004111b0
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0xd4]
jmp 0x48b0eb
xor eax, eax
xor ecx, ecx
jmp 0x48accc
movzx ecx, bp
lea ebp, [ebx + eax]
cmp ecx, 0x100000
ja 0x48b731
mov eax, ecx
mov ecx, ebp
jmp 0x48acaf
mov eax, 0x24
jmp 0x48ac9e
test ebx, 0x60
jne 0x48ac6b
jmp 0x48ac73
mov edi, eax
mov eax, ebp
call fcn.00456ab0
mov eax, edi
jmp 0x48abde
mov ebx, dword [esp + 0x3c]
test ebx, 0x80
je 0x48b19d
xchg ebp, eax
test al, 0x20
xchg ebp, eax
jne 0x48b1cc
test byte [eax], al
mov ebx, dword [0xe8ff30]
test ebx, ebx
jne 0x48b1b7
mov ebx, dword [esp + 0xc0]
mov dword [eax], ebx
jmp 0x48abde
mov edi, eax
mov eax, dword [esp + 0xc0]
call fcn.00456ab0
mov eax, edi
jmp 0x48abde
test byte [eax], al
mov ebx, dword [0xe8ff30]
mov ebp, dword [esp + 0xc0]
mov ebp, dword [ebp]
test ebx, ebx
jne 0x48b1e9
mov dword [eax], ebp
jmp 0x48abde
mov edi, eax
mov eax, ebp
call fcn.00456ab0
mov eax, edi
jmp 0x48abde
xor ecx, ecx
jmp 0x48abe3
mov dword [esp], eax
call fcn.0040af40
mov eax, dword [esp + 4]
lea edx, [0x92cb80]
jmp 0x48ab9a
add ebx, ebp
movzx ebx, bx
cmp ebx, 0x100000
ja 0x48b772
cmp edi, ebx
ja 0x48b769
sub ebx, edi
jmp 0x48ab42
movzx edi, byte [eax + 0xf]
and edi, 0x1f
cmp edi, 0x13
jne 0x48b8fe
movzx edi, word [eax + 0x22]
test di, 0x8000
je 0x48aaff
mov edi, esi
sub esi, ebx
movzx ebp, byte [eax + 0xc]
xchg ebp, eax
test al, 1
xchg ebp, eax
je 0x48b5ee
mov ebp, 0x34
movzx edi, word [eax + 0x20]
test di, di
jne 0x48b5c4
xor ebp, ebp
xor edi, edi
cmp ebx, ebp
jae 0x48b8e9
mov ebp, dword [edi + ebx*4]
test ebp, ebp
je 0x48b5bb
lea edi, [0xab2080]
mov dword [esp + 0x54], esi
mov dword [esp], edi
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], esi
call fcn.00491650
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xcc]
movzx ebp, byte [ebx + 0xf]
and ebp, 0x1f
cmp ebp, 0x13
jne 0x48b8d1
movzx ebp, byte [ebx + 0xc]
xchg ebp, eax
test al, 1
xchg ebp, eax
je 0x48b5b1
mov ebp, 0x34
movzx esi, word [ebx + 0x20]
test si, si
jne 0x48b595
xor ebp, ebp
xor esi, esi
mov edi, dword [esp + 0x60]
cmp edi, ebp
jae 0x48b8bc
mov dword [esp + 0x104], eax
mov dword [esp + 0x100], ecx
mov dword [esp + 0x7c], edx
mov ebp, dword [esi + edi*4]
test ebp, ebp
je 0x48b58c
lea esi, [0xab2080]
mov eax, dword [esi + 0x28]
mov dword [esp], ebp
call eax
mov eax, dword [esp + 8]
mov dword [esp + 0xe4], eax
mov ecx, dword [esp + 4]
mov dword [esp + 0x6c], ecx
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0x158]
mov ebp, dword [esp + 0x15c]
mov esi, dword [esp + 0x60]
xor edi, edi
jmp 0x48b401
mov eax, dword [esp + 0x100]
mov dword [esp], eax
mov ecx, dword [esp + 0x104]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x64]
mov dword [esp + 0xc], ebx
call fcn.0048cd60
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov eax, dword [esp + 0xf0]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x14], eax
call fcn.0048f510
mov eax, dword [esp + 0x64]
lea edi, [eax + 1]
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x158]
mov edx, dword [esp + 0x15c]
mov ebx, dword [esp + 0x60]
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0x158]
mov ebp, dword [esp + 0x15c]
mov esi, dword [esp + 0x60]
cmp edi, edx
jge 0x48b483
add esi, edi
cmp esi, ebp
jae 0x48b8b3
mov dword [esp + 0x64], edi
lea eax, [esi + esi*2]
mov ecx, dword [ebx + eax*4 + 8]
mov dword [esp + 0x74], ecx
mov edx, dword [ebx + eax*4 + 4]
mov dword [esp + 0xf8], edx
mov eax, dword [ebx + eax*4]
mov dword [esp + 0xf0], eax
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00490af0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xb8], ecx
mov edx, dword [eax + 0x14]
mov dword [esp], ecx
mov ebx, dword [esp + 0x6c]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0xe4]
mov dword [esp + 8], ebp
call edx
movzx eax, byte [esp + 0xc]
test al, al
jne 0x48b35f
jmp 0x48b7b8
lea eax, [0x9c9560]
mov dword [esp], eax
lea ecx, [esi + 1]
mov dword [esp + 0x84], ecx
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00440170
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x84]
cmp ecx, edx
ja 0x48b7b3
mov dword [esp + 0xf8], eax
lea ebx, [0x9c9560]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov ebp, dword [esp + 0x158]
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x15c]
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x160]
mov dword [esp + 0x18], ebp
call fcn.004113a0
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x84]
cmp eax, ecx
jae 0x48b7ae
lea ebx, [eax + eax*2]
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0xf8]
mov dword [esi + ebx*4 + 8], ebp
lea edi, [esi + ebx*4]
lea ebp, [esi + ebx*4 + 4]
mov eax, ebp
mov ebp, dword [0xe8ff30]
test ebp, ebp
jne 0x48b56e
mov ebp, dword [esp + 0x100]
mov dword [esi + ebx*4], ebp
mov ebp, dword [esp + 0x104]
mov dword [esi + ebx*4 + 4], ebp
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0x3c]
mov esi, dword [esp + 0x84]
mov ebp, dword [esp + 0xf8]
jmp 0x48aaff
mov edx, eax
mov eax, dword [esp + 0x100]
call fcn.00456ab0
mov edi, edx
mov eax, dword [esp + 0x104]
call fcn.00456ab0
jmp 0x48b549
xor ebp, ebp
xor esi, esi
jmp 0x48b327
movzx esi, si
add ebp, ebx
cmp esi, 0x100000
ja 0x48b8c5
mov edi, ebp
mov ebp, esi
mov esi, edi
jmp 0x48b2f8
mov ebp, 0x24
jmp 0x48b2e7
xor ebp, ebp
xor edi, edi
jmp 0x48b298
movzx edi, di
add ebp, eax
cmp edi, 0x100000
ja 0x48b8f2
mov dword [esp + 0x88], eax
mov eax, ebp
mov ebp, edi
mov edi, eax
mov eax, dword [esp + 0x88]
jmp 0x48b27f
mov ebp, 0x24
jmp 0x48b26e
movzx esi, word [eax + 0x22]
test si, 0x8000
je 0x48b604
dec ebx
mov ebp, dword [esp + 0x15c]
cmp ebp, ebx
jl 0x48bace
test si, 0x8000
je 0x48b62b
movzx ebp, byte [esp + 0x2b]
mov esi, dword [esp + 0x15c]
jmp 0x48a924
cmp ebp, ebx
jle 0x48b61a
jmp 0x48bab6
mov eax, dword [esp + 0x150]
mov dword [esp], eax
lea ecx, [0x9d01cd]
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
call fcn.00402350
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0xe0]
mov ebp, dword [esp + 0xc0]
mov esi, dword [esp + 0xbc]
mov edi, dword [esp + 0x154]
mov byte [esp + 0x2b], al
mov eax, dword [esp + 0xcc]
jmp 0x48a8dd
mov ebx, dword [esp + 0x148]
jmp 0x48a87b
mov eax, dword [esp + 0x150]
mov dword [esp], eax
mov ecx, dword [esp + 0x154]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x144]
mov dword [esp + 8], edx
mov ebp, dword [esp + 0x148]
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
sar ebx, 0xa
mov dword [esp + 0x14], ebx
call fcn.0048bb70
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
mov edx, dword [esp + 0x14c]
mov ebp, dword [esp + 0x148]
mov esi, dword [esp + 0x144]
jmp 0x48a88a
mov eax, ebx
mov ecx, ebp
call fcn.00456b30
mov eax, ebp
mov ecx, esi
call fcn.00456b30
mov dword [esp], ecx
lea eax, [0x9c2460]
mov dword [esp + 4], eax
lea eax, [0x9b3160]
mov dword [esp + 8], eax
call fcn.00408510
mov ecx, eax
mov eax, edx
call fcn.00456b30
mov edx, 0x100000
call fcn.00456b50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9cd30]
mov dword [esp + 4], eax
call fcn.0042cc50
mov dword [esp], ecx
mov dword [esp + 4], edx
lea eax, [0x92bbc0]
mov dword [esp + 8], eax
call fcn.00408450
mov eax, edi
mov ecx, ebx
call fcn.00456b90
mov ecx, ebx
mov edx, 0x100000
call fcn.00456b50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9d058]
mov dword [esp + 4], eax
call fcn.0042cc50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9d050]
mov dword [esp + 4], eax
call fcn.0042cc50
call fcn.00456b30
call fcn.00456b70
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0x80]
mov ecx, dword [esp + 0xb8]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov dword [esp + 0x108], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x84], ecx
mov edx, dword [esp + 0x6c]
mov edx, dword [edx + 0x80]
mov ebx, dword [esp + 0xe4]
mov dword [esp], ebx
call edx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x70], ecx
lea edi, [esp + 0x110]
lea esi, [0xaafce0]
call fcn.00457218
mov ecx, dword [esp + 0x108]
mov dword [esp + 0x118], ecx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x11c], ecx
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x12c], eax
mov eax, dword [esp + 0x150]
mov dword [esp + 0x138], eax
mov eax, dword [esp + 0x154]
mov dword [esp + 0x13c], eax
mov dword [esp], 0
lea eax, [esp + 0x110]
mov dword [esp + 4], eax
mov dword [esp + 8], 6
mov dword [esp + 0xc], 6
call fcn.00443350
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00408790
mov eax, dword [esp + 8]
lea ecx, [0x92c840]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0042cc50
mov eax, esi
mov ecx, ebp
call fcn.00456b30
mov eax, edi
mov ecx, ebp
call fcn.00456b30
mov ecx, esi
mov edx, 0x100000
call fcn.00456b50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9d048]
mov dword [esp + 4], eax
call fcn.0042cc50
mov eax, ebx
mov ecx, ebp
call fcn.00456b30
mov ecx, edi
mov edx, 0x100000
call fcn.00456b50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9d040]
mov dword [esp + 4], eax
call fcn.0042cc50
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x80]
mov ecx, dword [esp + 0xb4]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 8]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 4]
mov dword [esp + 0x108], ecx
mov edx, dword [esp + 0x44]
mov edx, dword [edx + 0x80]
mov ebx, dword [esp + 0xc8]
mov dword [esp], ebx
call edx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov dword [esp + 0xec], ecx
lea edi, [esp + 0x110]
lea esi, [0xaafca0]
call fcn.00457218
mov ecx, dword [esp + 0x150]
mov dword [esp + 0x118], ecx
mov ecx, dword [esp + 0x154]
mov dword [esp + 0x11c], ecx
mov ecx, dword [esp + 0x108]
mov dword [esp + 0x128], ecx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x12c], ecx
mov ecx, dword [esp + 0xec]
mov dword [esp + 0x138], ecx
mov dword [esp + 0x13c], eax
mov dword [esp], 0
lea eax, [esp + 0x110]
mov dword [esp + 4], eax
mov dword [esp + 8], 6
mov dword [esp + 0xc], 6
call fcn.00443350
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00408790
mov eax, dword [esp + 8]
lea ecx, [0x92c840]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0042cc50
mov eax, esi
mov ecx, ebx
call fcn.00456b30
mov ecx, ebp
mov edx, 0x100000
call fcn.00456b50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9d038]
mov dword [esp + 4], eax
call fcn.0042cc50
mov eax, edi
mov ecx, esi
call fcn.00456b30
mov dword [esp], 0
lea eax, [0x9d0a7c]
mov dword [esp + 4], eax
mov dword [esp + 8], 9
mov eax, dword [esp + 0x150]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edi
lea eax, [0x9de19b]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0x1a
call fcn.004435d0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00408790
mov eax, dword [esp + 8]
lea ecx, [0x92c840]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0042cc50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9d030]
mov dword [esp + 4], eax
call fcn.0042cc50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9d028]
mov dword [esp + 4], eax
call fcn.0042cc50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9d020]
mov dword [esp + 4], eax
call fcn.0042cc50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9d018]
mov dword [esp + 4], eax
call fcn.0042cc50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9d010]
mov dword [esp + 4], eax
call fcn.0042cc50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9d008]
mov dword [esp + 4], eax
call fcn.0042cc50
lea eax, [0x92c840]
mov dword [esp], eax
lea eax, [0xa9d000]
mov dword [esp + 4], eax
call fcn.0042cc50
nop
call fcn.00455270
jmp fcn.0048a830