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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x604
mov eax, dword [0x533840]
xor eax, esp
mov dword [esp + 0x600], eax
mov edx, dword [ebp + 8]
xorps xmm0, xmm0
mov eax, dword [ebp + 0x10]
push ebx
mov dword [esp + 0xc], eax
mov eax, dword [ebp + 0x14]
mov ebx, dword [edx + 0x4c]
push esi
mov dword [esp + 0x4c], eax
xor esi, esi
mov eax, dword [edx + 0x50]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x54], 0x1e01
mov dword [esp + 0x58], 0x1e01
movups xmmword [esp + 0x74], xmm0
push edi
movaps xmm0, xmmword [0x4fb6e0]
movups xmmword [esp + 0x88], xmm0
test eax, eax
jle 0x4ac47d
mov eax, dword [ebp + 0xc]
lea ecx, [esp + 0xa4]
lea edi, [edx + 0x134]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x38], edi
mov dword [esp + 0x28], 0x4ad020
nop dword [eax]
mov dword [esp + 0x10], 0
mov dword [esp + esi*4 + 0x48], 0
test ebx, ebx
jle 0x4ab96d
cmp dword [edx + 0x34], 0
mov eax, 0x4acc30
mov edx, 0x4aceb0
mov dword [esp + 0x3c], ebx
cmovl eax, edx
mov edx, ecx
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x54], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x78]
sub ecx, eax
lea eax, [esi*8]
mov dword [esp + 0x1c], ecx
mov ebx, eax
mov dword [esp + 0x34], eax
lea eax, [esp + 0x78]
mov dword [edx + 4], edi
add eax, ebx
mov dword [esp + ebx + 0x88], 0
lea edx, [edx + 0x24]
mov ecx, dword [eax + ecx]
add dword [esp + 0x18], ecx
mov dword [eax], ecx
mov eax, dword [esp + 0x10]
add eax, ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp + esi*4 + 0x48], eax
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x54]
mov dword [edx - 0x2c], eax
mov eax, dword [esp + 0x40]
mov dword [edx - 0x24], eax
mov eax, 0x4ae740
mov dword [edx - 0x28], ecx
cmp dword [edi + 0x12b4], 2
cmovne eax, dword [esp + 0x28]
add ecx, 0x900
add ebx, 4
mov dword [edx - 0x30], eax
add edi, 0x1484
mov dword [esp + 0x2c], ecx
sub dword [esp + 0x3c], 1
mov ecx, dword [esp + 0x1c]
jne 0x4ab8e5
mov ebx, dword [esp + 0x44]
mov ecx, dword [esp + 0x20]
mov eax, dword [ebp + 0xc]
mov edi, dword [esp + 0x38]
mov edx, dword [esp + 0x40]
inc esi
add eax, 0x1200
add ecx, 0x48
mov dword [ebp + 0xc], eax
add edi, 0x2908
mov dword [esp + 0x20], ecx
mov dword [esp + 0x38], edi
cmp esi, dword [esp + 0x30]
jl 0x4ab890
mov ecx, dword [esp + 0x50]
lea esi, [esp + 0x98]
xor eax, eax
mov dword [esp + 0x28], ecx
xor edi, edi
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edi
mov dword [esp + 0x38], esi
xor edx, edx
mov dword [esp + 0x10], edx
test ebx, ebx
jle 0x4aba55
mov dword [esp + 0x1c], esi
mov eax, edi
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x3c], edi
nop dword [eax]
cmp dword [ecx], 0
jle 0x4aba25
lea esi, [esp + 0x398]
add esi, eax
lea edi, [esp + 0x128]
add edi, eax
add eax, dword [esp + 0x14]
push esi
push edi
push eax
push dword [esp + 0x28]
call fcn.004ac4e0
push eax
push esi
mov esi, dword [esp + 0x34]
push edi
push esi
mov eax, dword [esi]
call eax
push dword [esi + 0x10]
push dword [esi + 0xc]
call fcn.004aaa50
add esp, 0x28
test eax, eax
jne 0x4ac4ad
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x10]
inc edx
add ecx, 4
add esi, 0x24
mov dword [esp + 0x10], edx
add eax, 0x9c
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x3c], eax
cmp edx, ebx
jl 0x4ab9d0
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x38]
inc eax
add esi, 0x48
add ecx, 8
mov dword [esp + 0x20], eax
add edi, 0x138
mov dword [esp + 0x38], esi
mov dword [esp + 0x28], ecx
mov dword [esp + 0x24], edi
cmp eax, dword [esp + 0x30]
jl 0x4ab9b0
mov ecx, dword [esp + 0x40]
lea esi, [esp + 0xa8]
xor eax, eax
mov dword [esp + 0x1c], 0
lea edi, [esp + 0x88]
mov dword [esp + 0x24], eax
add ecx, 0x13d4
mov dword [esp + 0x20], esi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x28], ecx
nop
xor edx, edx
mov dword [esp + eax*4 + 0x58], edx
xor eax, eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
test ebx, ebx
jle 0x4abbb1
mov edx, dword [esp + 0x50]
lea ebx, [esp + 0x88]
mov ecx, edi
sub edx, ebx
mov edi, dword [esp + 0x28]
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], edx
jmp 0x4abaf4
mov edx, dword [esp + 0x34]
cmp dword [edx + ecx], 0
jle 0x4abb32
mov eax, dword [esi]
push 0x900
add eax, 0x900
push 0
push eax
call fcn.004c62a0
lea eax, [esi - 0x10]
push eax
call fcn.004adbb0
push 0
push dword [esi]
push dword [esi - 4]
call fcn.004aa1a0
mov ecx, dword [esi]
add esp, 0x1c
mov dword [ecx + 0x12a0], eax
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x40]
lea ecx, [edx + 0x134]
push ecx
push eax
push dword [esp + 0x2c]
push edx
call fcn.004a95d0
mov ecx, dword [esp + 0x50]
add esp, 0x10
cmp dword [ecx + 0x28], 1
jne 0x4abb65
lea eax, [edi - 0x12a0]
push eax
push ecx
call fcn.004a91d0
add esp, 8
mov ecx, dword [esp + 0x2c]
add esi, 0x24
mov eax, dword [edi]
add eax, dword [edi + 0x4c]
add edi, 0x1484
mov edx, dword [esp + 0x10]
add edx, eax
mov dword [ecx], eax
mov eax, dword [esp + 0x14]
add ecx, 4
inc eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
mov dword [esp + 0x2c], ecx
cmp eax, ebx
jl 0x4abaf0
mov eax, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x28]
mov dword [esp + eax*4 + 0x58], edx
jmp 0x4abbb5
mov eax, dword [esp + 0x24]
add dword [esp + 0x1c], edx
inc eax
mov edx, dword [esp + 0x30]
add edi, 8
add esi, 0x48
mov dword [esp + 0x24], eax
add ecx, 0x2908
mov dword [esp + 0x3c], edi
mov dword [esp + 0x20], esi
mov dword [esp + 0x28], ecx
cmp eax, edx
jl 0x4abab0
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
cmp eax, edi
jg 0x4abc64
xor edi, edi
mov ecx, 1
test edx, edx
jle 0x4ac498
lea edx, [esp + 0x88]
mov dword [esp + 0x10], edx
nop dword [eax + eax]
xor eax, eax
cmp dword [esp + edi*4 + 0x58], 0x1e00
cmovle eax, ecx
mov ecx, eax
test ebx, ebx
jle 0x4abc4a
mov eax, edx
mov esi, ecx
mov edx, ebx
nop dword [eax]
xor ecx, ecx
lea eax, [eax + 4]
cmp dword [eax - 4], 0xfff
cmovle ecx, esi
mov esi, ecx
sub edx, 1
jne 0x4abc30
mov edx, dword [esp + 0x10]
inc edi
add edx, 8
mov dword [esp + 0x10], edx
cmp edi, dword [esp + 0x30]
jl 0x4abc10
test ecx, ecx
jne 0x4ac494
mov edi, dword [esp + 0x18]
xor eax, eax
mov dword [esp + 0x1c], 1
xor edx, edx
mov dword [esp + 0x14], eax
xorps xmm0, xmm0
mov dword [esp + 0x20], edx
cmp dword [esp + 0x30], eax
jle 0x4abee4
lea esi, [esp + 0x48]
mov dword [esp + 0x24], esi
nop dword [eax]
xor ecx, ecx
mov dword [esi], ecx
test ebx, ebx
jle 0x4abec4
mov edi, ebx
lea edx, [eax*8]
mov ebx, dword [esp + 0x24]
nop dword [eax]
mov eax, dword [esp + edx + 0x88]
lea edx, [edx + 4]
cmp eax, 0xfff
mov esi, 0xfff
cmovg eax, esi
mov esi, dword [esp + 0x18]
add ecx, eax
mov dword [esp + edx + 0x74], eax
mov dword [esp + 0x34], esi
mov eax, ecx
mov dword [ebx], ecx
mov dword [esp + 0x18], esi
sub edi, 1
jne 0x4abcb0
mov ebx, dword [esp + 0x44]
mov edi, esi
cmp eax, 0x1e00
mov dword [esp + 0x18], edi
mov eax, dword [esp + 0x14]
jle 0x4abf32
lea edi, [esp + 0x78]
mov dword [esp + 0x60], 0
movaps xmm2, xmm0
mov dword [esp + 0x64], 0
lea edi, [edi + eax*8]
movss dword [esp + 0x10], xmm2
mov eax, dword [esp + 0x34]
xor esi, esi
mov dword [esp + 0x18], eax
mov eax, dword [edi]
test eax, eax
jle 0x4abd76
movd xmm0, eax
xorps xmm1, xmm1
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x4abd42
sqrtsd xmm0, xmm0
jmp 0x4abd47
call fcn.004d8400
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x4abd56
sqrtsd xmm0, xmm0
jmp 0x4abd5b
call fcn.004d8400
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
xorps xmm0, xmm0
movaps xmm2, xmm1
addss xmm2, dword [esp + 0x10]
movss dword [esp + 0x10], xmm2
jmp 0x4abd79
movaps xmm1, xmm0
movss dword [esp + esi*4 + 0x60], xmm1
add edi, 4
inc esi
cmp esi, ebx
jl 0x4abd25
xor ecx, ecx
comiss xmm2, xmm0
jbe 0x4abdc7
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x78]
movss xmm1, dword [0x4fb6b4]
lea edx, [edx + eax*8]
movss xmm0, dword [esp + ecx*4 + 0x60]
lea edx, [edx + 4]
mulss xmm0, xmm1
inc ecx
divss xmm0, xmm2
cvttss2si eax, xmm0
mov dword [edx - 4], eax
cmp ecx, ebx
jl 0x4abda1
mov edx, dword [esp + 0x14]
xorps xmm0, xmm0
jmp 0x4abde0
mov edx, dword [esp + 0x14]
lea edi, [esp + 0x78]
xor eax, eax
mov ecx, ebx
lea edi, [edi + edx*8]
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
cmp ebx, 1
jle 0x4abe97
lea ecx, [edx*8]
lea ebx, [esp + 0x88]
add ebx, ecx
lea edi, [esp + 0x78]
add edi, ecx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x38], edi
mov esi, dword [ebx]
mov eax, dword [edi]
lea edx, [esi + 0x20]
cmp eax, edx
jle 0x4abe1f
sub eax, esi
mov dword [edi], edx
sub eax, 0x20
add dword [esp + ecx + 0x7c], eax
mov eax, edx
mov edi, dword [esp + 0x38]
lea esi, [esp + 0x78]
mov edx, dword [ecx + esi + 4]
mov esi, dword [esp + 0x28]
mov ebx, dword [esi + 4]
lea esi, [esp + 0x78]
add ebx, 0x20
cmp edx, ebx
mov ebx, dword [esp + 0x44]
jle 0x4abe72
mov edi, dword [esp + 0x28]
mov ebx, dword [edi + 4]
sub edx, ebx
mov edi, dword [esp + 0x38]
add edx, 0xffffffe0
add eax, edx
lea edx, [ebx + 0x20]
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x28]
mov dword [edi], eax
mov ebx, dword [edx + 4]
mov edx, dword [esp + 0x34]
add ebx, 0x20
mov dword [ecx + esi + 4], ebx
mov ebx, dword [esp + 0x44]
cmp eax, 0xfff
jle 0x4abe7f
mov dword [edi], 0xfff
cmp edx, 0xfff
jle 0x4abe97
mov dword [ecx + esi + 4], 0xfff
xor ecx, ecx
mov esi, dword [esp + 0x24]
jmp 0x4abe9f
mov esi, dword [esp + 0x24]
xor ecx, ecx
mov dword [esi], ecx
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x78]
lea eax, [edx + eax*8]
mov edx, ebx
nop dword [eax]
add ecx, dword [eax]
lea eax, [eax + 4]
sub edx, 1
jne 0x4abeb0
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
mov dword [esi], ecx
mov edi, dword [esp + 0x18]
inc eax
add edx, ecx
add esi, 4
mov dword [esp + 0x20], edx
mov dword [esp + 0x14], eax
mov dword [esp + 0x24], esi
cmp eax, dword [esp + 0x30]
jl 0x4abc90
cmp edx, edi
mov edx, dword [esp + 0x30]
jle 0x4ac1b4
movaps xmm2, xmm0
mov dword [esp + 0x68], 0
xor esi, esi
mov dword [esp + 0x6c], 0
movss dword [esp + 0x10], xmm2
test edx, edx
jle 0x4abfb1
mov eax, dword [esp + esi*4 + 0x48]
test eax, eax
jle 0x4abf60
movd xmm0, eax
xorps xmm1, xmm1
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x4abf3c
sqrtsd xmm0, xmm0
jmp 0x4abf41
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
jmp 0x4abec8
call fcn.004d8400
mov edx, dword [esp + 0x30]
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
xorps xmm0, xmm0
movaps xmm2, xmm1
addss xmm2, dword [esp + 0x10]
movss dword [esp + 0x10], xmm2
jmp 0x4abf63
movaps xmm1, xmm0
movss dword [esp + esi*4 + 0x68], xmm1
inc esi
cmp esi, edx
jl 0x4abf13
xor ecx, ecx
comiss xmm2, xmm0
jbe 0x4abf9f
movd xmm1, edi
cvtdq2ps xmm1, xmm1
mov dword [esp + 0x18], edi
movaps xmm0, xmm1
mulss xmm0, dword [esp + ecx*4 + 0x68]
divss xmm0, xmm2
cvttss2si eax, xmm0
mov dword [esp + ecx*4 + 0x48], eax
inc ecx
cmp ecx, edx
jl 0x4abf80
xorps xmm0, xmm0
jmp 0x4abfb1
xor eax, eax
lea edi, [esp + 0x48]
mov ecx, edx
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
cmp edx, 1
jle 0x4ac01f
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x48]
lea edx, [eax + 0x7d]
cmp ecx, edx
jle 0x4abfdc
sub ecx, eax
mov eax, dword [esp + 0x4c]
add eax, 0xffffff83
add eax, ecx
mov ecx, edx
mov dword [esp + 0x4c], eax
mov dword [esp + 0x48], ecx
jmp 0x4abfe0
mov eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x5c]
lea esi, [edx + 0x7d]
cmp eax, esi
jle 0x4abffa
sub eax, edx
mov dword [esp + 0x4c], esi
add eax, 0xffffff83
add eax, ecx
mov dword [esp + 0x48], eax
mov edx, dword [esp + 0x30]
xor eax, eax
cmp dword [esp + eax*4 + 0x48], 0x1e00
jle 0x4ac012
mov dword [esp + eax*4 + 0x48], 0x1e00
inc eax
cmp eax, edx
jl 0x4ac000
xor edi, edi
mov dword [esp + 0x14], edi
jmp 0x4ac030
xor edi, edi
mov dword [esp + 0x14], edi
test edx, edx
jle 0x4ac1b4
nop dword [eax]
movaps xmm2, xmm0
mov dword [esp + 0x70], 0
xor esi, esi
mov dword [esp + 0x74], 0
movss dword [esp + 0x10], xmm2
test ebx, ebx
jle 0x4ac10c
lea edi, [esp + edi*8 + 0x78]
mov eax, dword [edi]
test eax, eax
jle 0x4ac094
movd xmm0, eax
xorps xmm1, xmm1
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x4ac074
sqrtsd xmm0, xmm0
jmp 0x4ac079
call fcn.004d8400
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
xorps xmm0, xmm0
movaps xmm2, xmm1
addss xmm2, dword [esp + 0x10]
movss dword [esp + 0x10], xmm2
jmp 0x4ac097
movaps xmm1, xmm0
movss dword [esp + esi*4 + 0x70], xmm1
add edi, 4
inc esi
cmp esi, ebx
jl 0x4ac057
xor ecx, ecx
comiss xmm2, xmm0
jbe 0x4ac0f1
mov edi, dword [esp + 0x14]
lea edx, [esp + 0x78]
mov esi, dword [esp + 0x18]
mov dword [esp + 0x18], esi
movd xmm1, dword [esp + edi*4 + 0x48]
lea edx, [edx + edi*8]
cvtdq2ps xmm1, xmm1
nop dword [eax + eax]
movaps xmm0, xmm1
lea edx, [edx + 4]
mulss xmm0, dword [esp + ecx*4 + 0x70]
inc ecx
divss xmm0, xmm2
cvttss2si eax, xmm0
mov dword [edx - 4], eax
cmp ecx, ebx
jl 0x4ac0d0
xorps xmm0, xmm0
jmp 0x4ac10c
mov edx, dword [esp + 0x14]
lea edi, [esp + 0x78]
xor eax, eax
mov ecx, ebx
lea edi, [edi + edx*8]
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x18]
mov edi, edx
mov dword [esp + 0x18], eax
cmp ebx, 1
jle 0x4ac19b
lea edx, [edi*8]
lea eax, [esp + 0x88]
add eax, edx
lea ecx, [esp + 0x78]
add ecx, edx
mov dword [esp + 0x10], eax
mov edi, dword [eax]
mov eax, dword [ecx]
lea esi, [edi + 0x20]
cmp eax, esi
jle 0x4ac147
sub eax, edi
mov dword [ecx], esi
sub eax, 0x20
add dword [esp + edx + 0x7c], eax
mov eax, esi
mov edi, dword [esp + 0x10]
lea esi, [esp + 0x78]
mov esi, dword [edx + esi + 4]
mov edi, dword [edi + 4]
add edi, 0x20
mov dword [esp + 0x34], edi
cmp esi, edi
mov edi, dword [esp + 0x14]
jle 0x4ac183
mov ebx, dword [esp + 0x10]
sub esi, dword [ebx + 4]
mov ebx, dword [esp + 0x44]
add esi, 0xffffffe0
add eax, esi
mov esi, dword [esp + 0x34]
mov dword [ecx], eax
lea eax, [esp + 0x78]
mov dword [edx + eax + 4], esi
mov eax, ebx
cmp dword [ecx], 0xfff
jle 0x4ac193
mov dword [ecx], 0xfff
add ecx, 4
sub eax, 1
jne 0x4ac185
mov edx, dword [esp + 0x30]
inc edi
mov dword [esp + 0x14], edi
cmp edi, edx
jl 0x4ac030
xor ecx, ecx
mov dword [esp + 0x20], ecx
jmp 0x4ac1be
xor ecx, ecx
mov dword [esp + 0x20], ecx
test edx, edx
jle 0x4ac23b
lea eax, [esp + 0x78]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x10], eax
nop word [eax + eax]
xor esi, esi
test ebx, ebx
jle 0x4ac208
mov edi, ebx
mov edx, eax
mov ebx, dword [esp + 0x1c]
nop
add esi, dword [edx]
lea edx, [edx + 4]
xor ecx, ecx
cmp dword [edx - 4], 0xfff
cmovle ecx, ebx
mov ebx, ecx
sub edi, 1
jne 0x4ac1e0
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x44]
xor eax, eax
add ecx, esi
cmp esi, 0x1e00
mov dword [esp + 0x20], ecx
cmovle eax, dword [esp + 0x1c]
mov esi, eax
mov eax, dword [esp + 0x10]
add eax, 8
mov dword [esp + 0x1c], esi
sub edx, 1
mov dword [esp + 0x10], eax
mov dword [esp + 0x2c], edx
jne 0x4ac1d0
mov edx, dword [esp + 0x30]
jmp 0x4ac240
mov esi, 1
xor eax, eax
cmp ecx, dword [esp + 0x18]
cmovle eax, esi
test eax, eax
jne 0x4ac278
test edx, edx
jle 0x4ac278
mov eax, dword [esp + 0x50]
lea edi, [esp + 0x78]
sub edi, eax
mov dword [esp + 0x34], edi
nop
test ebx, ebx
jle 0x4ac270
add edi, eax
mov ecx, ebx
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x34]
add eax, 8
sub edx, 1
jne 0x4ac260
test ebx, ebx
jle 0x4ac295
mov edi, dword [esp + 0x40]
mov ecx, ebx
and ecx, 0xfffffff
add edi, 0x5354
shl ecx, 2
xor eax, eax
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x30]
test eax, eax
jle 0x4ac45c
mov edi, dword [esp + 0x40]
mov esi, eax
lea edx, [edi + 0x13e4]
nop dword [eax]
test ebx, ebx
jle 0x4ac2d1
mov eax, edx
mov ecx, ebx
nop dword [eax + eax]
mov dword [eax], 0
lea eax, [eax + 0x1484]
sub ecx, 1
jne 0x4ac2c0
add edx, 0x2908
sub esi, 1
jne 0x4ac2b0
lea eax, [esp + 0x98]
mov dword [esp + 0x34], esi
mov dword [esp + 0x3c], eax
xor edx, edx
lea eax, [edi + 0x13d4]
mov dword [esp + 0x1c], edx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x10], edx
mov dword [esp + 0x18], eax
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x20], eax
test ebx, ebx
jle 0x4ac430
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x3c]
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x10]
shl ecx, 3
mov dword [esp + 0x38], edx
mov dword [esp + 0x54], esi
mov dword [esp + 0x28], edi
mov dword [esp + 0x24], ecx
nop
mov ebx, dword [esp + 0x50]
cmp dword [ecx + ebx], 0
mov ebx, dword [esp + 0x44]
jle 0x4ac3ad
mov eax, dword [edx + 0x10]
mov esi, 0x27
lea edx, [esp + 0x128]
add edx, dword [esp + 0x28]
mov edi, dword [eax + 0x12ac]
cmp dword [edx], edi
mov ecx, edi
cmovl ecx, dword [edx]
lea edx, [edx + 4]
mov dword [edx - 4], ecx
sub esi, 1
jne 0x4ac367
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
push dword [esp + eax + 0x78]
lea eax, [esp + 0x39c]
add eax, edi
push eax
lea eax, [esp + 0x130]
add eax, edi
push eax
push dword [esp + 0x44]
call fcn.004ad8b0
mov esi, dword [esp + 0x64]
add esp, 0x10
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x40]
lea ecx, [edx + 0x134]
push ecx
push eax
push dword [esp + 0x24]
push edx
call fcn.004a95d0
mov ecx, dword [esp + 0x50]
add esp, 0x10
cmp dword [ecx + 0x28], 1
jne 0x4ac3e0
lea eax, [esi - 0x12a0]
push eax
push ecx
call fcn.004a91d0
add esp, 8
mov eax, dword [esi + 0x4c]
add edi, 0x9c
add eax, dword [esi]
add esi, 0x1484
add dword [esp + 0x14], eax
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x38]
inc eax
mov ecx, dword [esp + 0x24]
add edx, 0x24
add ecx, 4
mov dword [esp + 0x20], eax
mov dword [esp + 0x38], edx
mov dword [esp + 0x28], edi
mov dword [esp + 0x54], esi
mov dword [esp + 0x24], ecx
cmp eax, ebx
jl 0x4ac340
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x34]
add dword [esp + 0x3c], 0x48
inc edx
add dword [esp + 0x2c], 0x2908
add esi, ecx
add dword [esp + 0x10], 0x138
mov dword [esp + 0x34], esi
mov dword [esp + 0x1c], edx
cmp edx, dword [esp + 0x30]
jl 0x4ac307
jmp 0x4ac45e
xor esi, esi
mov eax, dword [esp + 0x18]
cmp esi, eax
jg 0x4ac4c4
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x600]
xor ecx, esp
call fcn.004c43a7
mov esp, ebp
pop ebp
ret
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x600]
xor ecx, esp
call fcn.004c43a7
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x60c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004c43a7
mov esp, ebp
pop ebp
ret
push str.INTERNAL_ERROR_IN_VBR_NEW_CODE__986___please_send_bug_report_n
push dword [esi + 0xc]
call fcn.00497960
add esp, 8
push 0xffffffffffffffff
call fcn.004cff69
push esi
push eax
push str.INTERNAL_ERROR_IN_VBR_NEW_CODE__1313___please_send_bug_report_nmaxbits_d_usedbits_d_n
push dword [esp + 0x4c]
call fcn.00497960
add esp, 0x10
push 0xffffffffffffffff
call fcn.004cff69
int3