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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x66c7a7
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xfc
push ebx
push esi
xor esi, esi
push edi
mov dword [esp + 0x20], esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x24], esi
mov edi, 0x69dcbc
push 0xa
push esi
lea ecx, [esp + 0x24]
mov dword [esp + 0x118], esi
mov dword [esp + 0x24], edi
call fcn.0048b670
mov dword [esp + 0x110], 1
mov dword [esp + 0x50], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x54], esi
push 0xa
push esi
lea ecx, [esp + 0x54]
mov byte [esp + 0x118], 2
mov dword [esp + 0x54], edi
call fcn.0048b670
mov dword [esp + 0x64], esi
mov dword [esp + 0x70], esi
mov dword [esp + 0x6c], esi
mov dword [esp + 0x68], esi
push 0xa
push esi
lea ecx, [esp + 0x68]
mov byte [esp + 0x118], 4
mov dword [esp + 0x68], edi
call fcn.0048b670
mov ecx, dword [ebp + 0xc]
mov byte [esp + 0x110], 5
call fcn.004da9b0
mov edi, eax
mov ecx, edi
mov dword [esp + 0x40], edi
call fcn.004eaa30
test eax, eax
jle 0x47ae2c
push esi
mov ecx, edi
call fcn.004ea770
mov dword [esp + 0x30], eax
jmp 0x47ae30
mov dword [esp + 0x30], esi
mov eax, dword [ebp + 8]
mov dword [esp + 0x48], esi
mov eax, dword [eax + 0x14]
cmp eax, esi
mov dword [esp + 0x74], eax
jle 0x47bae6
mov ecx, dword [ebp + 8]
mov eax, dword [esp + 0x48]
push 3
mov edx, dword [ecx + 0x10]
mov esi, dword [edx + eax*4]
mov ecx, esi
mov dword [esp + 0x48], esi
call fcn.00529de0
test eax, eax
je 0x47ae7e
mov eax, dword [esp + 0x54]
push 0xffffffffffffffff
mov edi, eax
inc eax
push eax
lea ecx, [esp + 0x54]
call fcn.0048b670
mov ecx, dword [esp + 0x50]
mov dword [ecx + edi*4], esi
push 6
mov ecx, esi
call fcn.00529de0
test eax, eax
je 0x47aea5
mov eax, dword [esp + 0x68]
push 0xffffffffffffffff
mov edi, eax
inc eax
push eax
lea ecx, [esp + 0x68]
call fcn.0048b670
mov edx, dword [esp + 0x64]
mov dword [edx + edi*4], esi
push 1
mov ecx, esi
call fcn.00529de0
test eax, eax
je 0x47b832
mov ebx, dword [esp + 0x24]
test ebx, ebx
mov dword [esp + 0x3c], ebx
jne 0x47aeda
push 0xffffffffffffffff
push 1
lea ecx, [esp + 0x24]
call fcn.0048b670
mov eax, dword [esp + 0x20]
mov dword [eax], esi
jmp 0x47bad1
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx + ebx*4 - 4]
push edx
push esi
call fcn.004d4400
fcomp qword [0x6fd3e0]
add esp, 8
fnstsw ax
test ah, 0x41
jne 0x47af18
mov eax, dword [esp + 0x24]
push 0xffffffffffffffff
mov edi, eax
inc eax
push eax
lea ecx, [esp + 0x24]
call fcn.0048b670
mov eax, dword [esp + 0x20]
inc ebx
mov dword [esp + 0x3c], ebx
mov dword [eax + edi*4], esi
cmp ebx, 2
jge 0x47af5d
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x54]
call fcn.0048b670
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x24]
call fcn.0048b670
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x68]
call fcn.0048b670
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x47b813
cmp eax, 2
jne 0x47bad1
jmp 0x47b813
mov edx, dword [esp + 0x20]
push 2
mov ecx, dword [edx + 4]
call fcn.00529de0
test eax, eax
je 0x47b16e
lea eax, [ebx + ebx*2]
shl eax, 3
push eax
call fcn.0065e5d0
mov edi, eax
add esp, 4
mov dword [esp + 0x14], edi
test edi, edi
mov byte [esp + 0x110], 6
je 0x47afbd
lea eax, [ebx - 1]
mov esi, edi
test eax, eax
jl 0x47afb7
inc eax
mov dword [esp + 0x10], eax
mov ecx, esi
call fcn.0064dc20
mov eax, dword [esp + 0x10]
add esi, 0x18
dec eax
mov dword [esp + 0x10], eax
jne 0x47afa2
mov dword [esp + 0x18], edi
jmp 0x47afc5
mov dword [esp + 0x18], 0
xor edi, edi
mov byte [esp + 0x110], 5
test ebx, ebx
jle 0x47b018
mov ecx, dword [esp + 0x18]
lea esi, [ecx + 0x10]
mov eax, dword [esp + 0x20]
lea edx, [esp + 0xc0]
push edx
mov ecx, dword [eax + edi*4]
call fcn.004d4310
mov ecx, dword [eax]
inc edi
mov dword [esi - 0x10], ecx
mov edx, dword [eax + 4]
mov dword [esi - 0xc], edx
mov ecx, dword [eax + 8]
mov dword [esi - 8], ecx
mov edx, dword [eax + 0xc]
mov dword [esi - 4], edx
mov ecx, dword [eax + 0x10]
mov dword [esi], ecx
mov edx, dword [eax + 0x14]
mov dword [esi + 4], edx
add esi, 0x18
cmp edi, ebx
jl 0x47afda
mov edi, dword [esp + 0x18]
push 0
push ebx
push edi
call fcn.00500ab0
push edi
mov esi, eax
call fcn.0065e732
mov ebx, dword [ebp + 0x10]
push ebx
push esi
call fcn.004937b0
mov edi, eax
add esp, 0x18
test edi, edi
je 0x47b158
push 0
push 0
mov ecx, edi
call fcn.0048fee0
push 0
push 0
mov ecx, edi
call fcn.0048ff10
mov eax, dword [ebp + 0xc]
push ebx
push eax
lea ecx, [esp + 0x54]
push edi
push ecx
call fcn.0047a7b0
mov eax, dword [ebp + 0x14]
add esp, 0x10
test eax, eax
jne 0x47b093
push 1
push eax
mov ecx, edi
call fcn.0048ed30
push 0
mov ecx, edi
call fcn.0048ee50
mov ecx, dword [esp + 0x40]
push edi
call fcn.004ea790
jmp 0x47b0bd
cmp eax, 1
jne 0x47b0a2
push eax
mov ecx, edi
call fcn.0048ee50
jmp 0x47b0bd
cmp eax, 2
jne 0x47b0bd
push eax
mov ecx, edi
call fcn.0048ee50
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0x47b0bd
push edi
call fcn.0048fd30
mov eax, dword [esp + 0x68]
xor ebx, ebx
test eax, eax
mov dword [esp + 0x10], eax
jle 0x47b14a
push 0x1e0
call fcn.0065e5d0
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
mov byte [esp + 0x110], 7
je 0x47b0f3
mov ecx, eax
call fcn.004ac400
mov esi, eax
jmp 0x47b0f5
xor esi, esi
sub esp, 0x18
lea ecx, [esp + 0x78]
mov edx, esp
mov dword [esp + 0x2c], esp
push edx
push ebx
mov byte [esp + 0x130], 5
call fcn.004ea1e0
mov ecx, dword [eax]
call fcn.004d4310
mov ecx, esi
call fcn.004d54d0
push edi
mov ecx, esi
call fcn.004ac930
push esi
mov ecx, edi
call fcn.0048ee90
push 6
mov ecx, esi
call fcn.004ac8f0
mov ecx, dword [ebp + 0x10]
push esi
call fcn.0049d780
mov eax, dword [esp + 0x10]
inc ebx
cmp ebx, eax
jl 0x47b0cb
mov ecx, dword [ebp + 0xc]
push edi
call fcn.004e0dd0
jmp 0x47b7b6
test esi, esi
je 0x47b7b6
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 4]
jmp 0x47b7b6
mov eax, dword [0x706cf8]
test eax, eax
jne 0x47b319
mov ecx, dword [esp + 0x3c]
xor ebx, ebx
lea eax, [ecx - 1]
test eax, eax
mov dword [esp + 0x14], eax
jle 0x47b7b6
push 0xb8
call fcn.0065e5d0
add esp, 4
mov dword [esp + 0x10], eax
test eax, eax
mov byte [esp + 0x110], 8
je 0x47b1b8
mov ecx, eax
call fcn.004c7940
mov edi, eax
jmp 0x47b1ba
xor edi, edi
mov esi, dword [edi]
sub esp, 0x18
mov edx, esp
mov dword [esp + 0x28], esp
push edx
push ebx
lea ecx, [esp + 0x3c]
mov byte [esp + 0x130], 5
call fcn.004ea1e0
mov ecx, dword [eax]
call fcn.004d4310
mov ecx, edi
call dword [esi + 0x80]
mov esi, dword [edi]
sub esp, 0x18
mov ecx, esp
lea eax, [ebx + 1]
mov dword [esp + 0x30], esp
push ecx
push eax
lea ecx, [esp + 0x3c]
mov dword [esp + 0x30], eax
call fcn.004ea1e0
mov ecx, dword [eax]
call fcn.004d4310
mov ecx, edi
call dword [esi + 0x88]
mov edx, dword [ebp + 0x10]
push edx
push edi
call fcn.004937b0
mov esi, eax
add esp, 8
test esi, esi
je 0x47b2f7
push 0
push 0
mov ecx, esi
call fcn.0048fee0
push 0
push 0
mov ecx, esi
call fcn.0048ff10
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
push eax
push ecx
lea edx, [esp + 0x54]
push esi
push edx
call fcn.0047a7b0
mov eax, dword [ebp + 0x14]
add esp, 0x10
test eax, eax
jne 0x47b27c
push 1
push eax
mov ecx, esi
call fcn.0048ed30
push 0
mov ecx, esi
call fcn.0048ee50
mov ecx, dword [esp + 0x40]
push esi
call fcn.004ea790
jmp 0x47b2a6
cmp eax, 1
jne 0x47b28b
push eax
mov ecx, esi
call fcn.0048ee50
jmp 0x47b2a6
cmp eax, 2
jne 0x47b2a6
push eax
mov ecx, esi
call fcn.0048ee50
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0x47b2a6
push esi
call fcn.0048fd30
mov eax, dword [esp + 0x20]
push 4
mov ecx, dword [eax + ebx*4]
call fcn.00529de0
mov ecx, dword [esp + 0x20]
push 4
mov edi, eax
mov ecx, dword [ecx + ebx*4 + 4]
call fcn.00529de0
test edi, edi
je 0x47b2ec
test eax, eax
je 0x47b2ec
push 1
push 0
mov ecx, esi
call fcn.0048ed80
push 1
push 7
mov ecx, esi
call fcn.0048ed30
mov edx, dword [esi]
push 1
mov ecx, esi
call dword [edx + 0x58]
mov ecx, dword [ebp + 0xc]
push esi
call fcn.004e0dd0
jmp 0x47b304
test edi, edi
je 0x47b304
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax + 4]
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
cmp ebx, eax
jl 0x47b190
jmp 0x47b7b6
mov esi, 1
lea eax, [ebx - 1]
mov edi, esi
cmp eax, esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x10], edi
jle 0x47b620
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0xa8]
push ecx
mov ecx, dword [edx + edi*4 - 4]
call fcn.004d4310
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x78]
push eax
mov ecx, dword [ecx + edi*4]
call fcn.004d4310
mov eax, dword [esp + 0x20]
lea edx, [esp + 0x90]
push edx
mov ecx, dword [eax + edi*4 + 4]
call fcn.004d4310
fld qword [esp + 0x78]
fsub qword [esp + 0xa8]
fld qword [esp + 0x80]
fsub qword [esp + 0xb0]
fld qword [esp + 0x90]
fsub qword [esp + 0x78]
fld qword [esp + 0x98]
fsub qword [esp + 0x80]
fld st(1)
fabs
fcomp qword [0x691f50]
fnstsw ax
test ah, 1
je 0x47b3c6
fld st(0)
fabs
fcomp qword [0x691f50]
fnstsw ax
test ah, 1
jne 0x47b608
fld st(0)
fmul st(3)
fld st(2)
fmul st(5)
faddp st(1)
fld st(1)
fmul st(2)
fld st(3)
fmul st(4)
faddp st(1)
fsqrt
fld st(4)
fmul st(5)
fld st(6)
fmul st(7)
faddp st(1)
fsqrt
fmulp st(1)
fdivp st(1)
fstp qword [esp + 0x34]
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
fld qword [esp + 0x34]
fcomp qword [0x695748]
fnstsw ax
test ah, 1
jne 0x47b41b
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0x3ff00000
jmp 0x47b43c
fld qword [esp + 0x34]
fcomp qword [0x691ab8]
fnstsw ax
test ah, 0x41
je 0x47b43c
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0xbff00000
fld qword [esp + 0x34]
call fcn.0065f6e4
fld qword [0x6dcfa8]
fmul qword [0x69dcd0]
fcompp
fnstsw ax
test ah, 1
je 0x47b610
sub edi, esi
add edi, 2
cmp edi, 2
jl 0x47b5f5
lea ecx, [edi + edi*2]
shl ecx, 3
push ecx
call fcn.0065e5d0
mov ebx, eax
add esp, 4
mov dword [esp + 0x34], ebx
test ebx, ebx
mov byte [esp + 0x110], 9
je 0x47b4b4
lea eax, [edi - 1]
mov esi, ebx
test eax, eax
jl 0x47b4b0
inc eax
mov dword [esp + 0x14], eax
mov ecx, esi
call fcn.0064dc20
mov eax, dword [esp + 0x14]
add esi, 0x18
dec eax
mov dword [esp + 0x14], eax
jne 0x47b49b
mov esi, ebx
jmp 0x47b4b6
xor esi, esi
test edi, edi
mov dword [esp + 0x14], esi
mov byte [esp + 0x110], 5
jle 0x47b52b
mov edx, dword [esp + 0x18]
mov eax, esi
mov dword [esp + 0x18], edi
lea ebx, [edx*4]
lea esi, [eax + 0x10]
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0xd8]
push ecx
mov ecx, dword [edx + ebx - 4]
call fcn.004d4310
mov ecx, dword [eax]
add ebx, 4
mov dword [esi - 0x10], ecx
mov edx, dword [eax + 4]
mov dword [esi - 0xc], edx
mov ecx, dword [eax + 8]
mov dword [esi - 8], ecx
mov edx, dword [eax + 0xc]
mov dword [esi - 4], edx
mov ecx, dword [eax + 0x10]
mov dword [esi], ecx
mov edx, dword [eax + 0x14]
mov eax, dword [esp + 0x18]
mov dword [esi + 4], edx
add esi, 0x18
dec eax
mov dword [esp + 0x18], eax
jne 0x47b4da
mov ebx, dword [ebp + 0x14]
mov esi, dword [esp + 0x14]
jmp 0x47b52e
mov ebx, dword [ebp + 0x14]
push 0
push edi
push esi
call fcn.00500ab0
push esi
mov edi, eax
call fcn.0065e732
mov eax, dword [ebp + 0x10]
push eax
push edi
call fcn.004937b0
mov esi, eax
add esp, 0x18
test esi, esi
je 0x47b5e8
push 0
push 0
mov ecx, esi
call fcn.0048fee0
push 0
push 0
mov ecx, esi
call fcn.0048ff10
mov ecx, dword [ebp + 0x10]
mov edi, dword [ebp + 0xc]
push ecx
push edi
lea edx, [esp + 0x54]
push esi
push edx
call fcn.0047a7b0
add esp, 0x10
test ebx, ebx
jne 0x47b5ac
push 1
push ebx
mov ecx, esi
call fcn.0048ed30
push ebx
mov ecx, esi
call fcn.0048ee50
mov ecx, dword [esp + 0x40]
push esi
call fcn.004ea790
push esi
mov ecx, edi
call fcn.004e0dd0
jmp 0x47b5f5
cmp ebx, 1
jne 0x47b5c3
push ebx
mov ecx, esi
call fcn.0048ee50
push esi
mov ecx, edi
call fcn.004e0dd0
jmp 0x47b5f5
cmp ebx, 2
jne 0x47b5de
push ebx
mov ecx, esi
call fcn.0048ee50
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0x47b5de
push esi
call fcn.0048fd30
push esi
mov ecx, edi
call fcn.004e0dd0
jmp 0x47b5f5
test edi, edi
je 0x47b5f5
mov eax, dword [edi]
push 1
mov ecx, edi
call dword [eax + 4]
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x3c]
mov edi, ecx
lea esi, [ecx + 1]
mov dword [esp + 0x18], esi
jmp 0x47b610
fstp st(0)
fstp st(0)
fstp st(0)
fstp st(0)
inc edi
lea eax, [ebx - 1]
cmp edi, eax
mov dword [esp + 0x10], edi
jl 0x47b333
mov ebx, dword [esp + 0x3c]
mov edx, dword [esp + 0x18]
sub ebx, edx
inc ebx
cmp ebx, 2
jl 0x47b7b6
lea edx, [ebx + ebx*2]
shl edx, 3
push edx
call fcn.0065e5d0
mov edi, eax
add esp, 4
mov dword [esp + 0x34], edi
test edi, edi
mov byte [esp + 0x110], 0xa
je 0x47b67c
lea eax, [ebx - 1]
mov esi, edi
test eax, eax
jl 0x47b678
inc eax
mov dword [esp + 0x10], eax
mov ecx, esi
call fcn.0064dc20
mov eax, dword [esp + 0x10]
add esi, 0x18
dec eax
mov dword [esp + 0x10], eax
jne 0x47b663
mov esi, edi
jmp 0x47b67e
xor esi, esi
test ebx, ebx
mov dword [esp + 0x10], esi
mov byte [esp + 0x110], 5
jle 0x47b6ee
mov eax, dword [esp + 0x18]
mov ecx, esi
mov dword [esp + 0x14], ebx
lea edi, [eax*4]
lea esi, [ecx + 0x10]
mov eax, dword [esp + 0x20]
lea edx, [esp + 0xf0]
push edx
mov ecx, dword [eax + edi - 4]
call fcn.004d4310
mov ecx, dword [eax]
add edi, 4
mov dword [esi - 0x10], ecx
mov edx, dword [eax + 4]
mov dword [esi - 0xc], edx
mov ecx, dword [eax + 8]
mov dword [esi - 8], ecx
mov edx, dword [eax + 0xc]
mov dword [esi - 4], edx
mov ecx, dword [eax + 0x10]
mov dword [esi], ecx
mov edx, dword [eax + 0x14]
mov eax, dword [esp + 0x14]
mov dword [esi + 4], edx
add esi, 0x18
dec eax
mov dword [esp + 0x14], eax
jne 0x47b6a2
mov esi, dword [esp + 0x10]
push 0
push ebx
push esi
call fcn.00500ab0
push esi
mov edi, eax
call fcn.0065e732
mov ebx, dword [ebp + 0x10]
push ebx
push edi
call fcn.004937b0
mov esi, eax
add esp, 0x18
test esi, esi
je 0x47b7a9
push 0
push 0
mov ecx, esi
call fcn.0048fee0
push 0
push 0
mov ecx, esi
call fcn.0048ff10
mov edi, dword [ebp + 0xc]
push ebx
push edi
lea eax, [esp + 0x54]
push esi
push eax
call fcn.0047a7b0
mov eax, dword [ebp + 0x14]
add esp, 0x10
test eax, eax
jne 0x47b76d
push 1
push eax
mov ecx, esi
call fcn.0048ed30
push 0
mov ecx, esi
call fcn.0048ee50
mov ecx, dword [esp + 0x40]
push esi
call fcn.004ea790
push esi
mov ecx, edi
call fcn.004e0dd0
jmp 0x47b7b6
cmp eax, 1
jne 0x47b784
push eax
mov ecx, esi
call fcn.0048ee50
push esi
mov ecx, edi
call fcn.004e0dd0
jmp 0x47b7b6
cmp eax, 2
jne 0x47b79f
push eax
mov ecx, esi
call fcn.0048ee50
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0x47b79f
push esi
call fcn.0048fd30
push esi
mov ecx, edi
call fcn.004e0dd0
jmp 0x47b7b6
test edi, edi
je 0x47b7b6
mov edx, dword [edi]
push 1
mov ecx, edi
call dword [edx + 4]
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x54]
call fcn.0048b670
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x24]
call fcn.0048b670
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x68]
call fcn.0048b670
mov eax, dword [ebp + 8]
cmp dword [eax + 8], 1
je 0x47b7ff
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x47b7ff
cmp eax, 2
je 0x47b7ff
mov eax, dword [0x706cfc]
test eax, eax
je 0x47bad1
mov esi, dword [esp + 0x44]
mov ecx, esi
call fcn.004d42a0
cmp eax, 1
je 0x47bad1
mov eax, dword [esp + 0x24]
push 0xffffffffffffffff
mov edi, eax
inc eax
push eax
lea ecx, [esp + 0x24]
call fcn.0048b670
mov ecx, dword [esp + 0x20]
mov dword [ecx + edi*4], esi
jmp 0x47bad1
mov edx, dword [esp + 0x24]
test edx, edx
jle 0x47b9a8
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + edx*4 - 4]
push ecx
push esi
call fcn.004d4400
fcomp qword [0x6fd3e0]
add esp, 8
fnstsw ax
test ah, 0x41
jne 0x47bad1
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
xor esi, esi
mov dword [esp + 0x18], edx
lea ebx, [edx + 1]
cmp ebx, esi
jne 0x47b89e
cmp eax, esi
je 0x47b889
push eax
call fcn.0065e732
add esp, 4
xor eax, eax
mov dword [esp + 0x20], eax
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x28], esi
mov dword [esp + 0x24], esi
jmp 0x47bace
cmp eax, esi
jne 0x47b8e3
lea esi, [ebx*4]
push esi
call fcn.0065e5d0
mov ecx, esi
mov edi, eax
mov edx, ecx
xor eax, eax
shr ecx, 2
mov dword [esp + 0x24], edi
add esp, 4
rep stosd dword es:[edi], eax
mov ecx, edx
mov edx, dword [esp + 0x44]
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x24], ebx
jmp 0x47bace
mov ecx, dword [esp + 0x28]
cmp ebx, ecx
jg 0x47b911
cmp ebx, edx
jle 0x47b900
mov ecx, ebx
sub ecx, edx
lea edx, [eax + edx*4]
xor eax, eax
mov edi, edx
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x24], ebx
jmp 0x47bace
mov eax, dword [esp + 0x2c]
cmp eax, esi
jne 0x47b93c
mov eax, edx
cdq
and edx, 7
add eax, edx
sar eax, 3
cmp eax, 4
jge 0x47b930
mov eax, 4
jmp 0x47b93c
cmp eax, 0x400
jle 0x47b93c
mov eax, 0x400
add eax, ecx
cmp ebx, eax
mov dword [esp + 0x10], eax
jl 0x47b94a
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x10]
lea ecx, [eax*4]
push ecx
call fcn.0065e5d0
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x24]
mov edi, eax
mov dword [esp + 0x18], eax
rep movsd dword es:[edi], dword [esi]
mov edx, dword [esp + 0x28]
mov ecx, ebx
sub ecx, edx
lea edi, [eax + edx*4]
xor eax, eax
rep stosd dword es:[edi], eax
mov edx, dword [esp + 0x24]
push edx
call fcn.0065e732
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x20]
add esp, 8
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ebx
jmp 0x47bace
mov eax, dword [esp + 0x20]
lea ebx, [edx + 1]
xor esi, esi
mov dword [esp + 0x18], edx
cmp ebx, esi
jne 0x47b9d9
cmp eax, esi
je 0x47b9cc
push eax
call fcn.0065e732
add esp, 4
xor eax, eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x28], esi
mov dword [esp + 0x24], esi
jmp 0x47bac6
cmp eax, esi
jne 0x47ba16
lea esi, [ebx*4]
push esi
call fcn.0065e5d0
mov ecx, esi
mov edi, eax
mov edx, ecx
xor eax, eax
shr ecx, 2
mov dword [esp + 0x24], edi
add esp, 4
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x20]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x24], ebx
jmp 0x47bac6
mov ecx, dword [esp + 0x28]
cmp ebx, ecx
jg 0x47ba3c
cmp ebx, edx
jle 0x47ba33
mov ecx, ebx
sub ecx, edx
lea edx, [eax + edx*4]
xor eax, eax
mov edi, edx
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x24], ebx
jmp 0x47bac6
mov eax, dword [esp + 0x2c]
cmp eax, esi
jne 0x47ba67
mov eax, edx
cdq
and edx, 7
add eax, edx
sar eax, 3
cmp eax, 4
jge 0x47ba5b
mov eax, 4
jmp 0x47ba67
cmp eax, 0x400
jle 0x47ba67
mov eax, 0x400
add eax, ecx
cmp ebx, eax
mov dword [esp + 0x10], eax
jl 0x47ba75
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x10]
lea ecx, [eax*4]
push ecx
call fcn.0065e5d0
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x24]
mov edi, eax
mov dword [esp + 0x18], eax
rep movsd dword es:[edi], dword [esi]
mov edx, dword [esp + 0x28]
mov ecx, ebx
sub ecx, edx
lea edi, [eax + edx*4]
xor eax, eax
rep stosd dword es:[edi], eax
mov edx, dword [esp + 0x24]
push edx
call fcn.0065e732
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
add esp, 8
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ecx
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x18]
mov dword [eax + ecx*4], edx
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x74]
inc eax
cmp eax, ecx
mov dword [esp + 0x48], eax
jl 0x47ae46
mov esi, 0x69dca8
mov dword [esp + 0x60], esi
mov eax, dword [esp + 0x64]
mov byte [esp + 0x110], 0xb
test eax, eax
je 0x47bb08
push eax
call fcn.0065e732
add esp, 4
mov edi, 0x691080
mov dword [esp + 0x4c], esi
mov dword [esp + 0x60], edi
mov eax, dword [esp + 0x50]
mov byte [esp + 0x110], 0xc
test eax, eax
je 0x47bb2e
push eax
call fcn.0065e732
add esp, 4
mov dword [esp + 0x4c], edi
mov dword [esp + 0x1c], esi
mov eax, dword [esp + 0x20]
mov dword [esp + 0x110], 0xd
test eax, eax
je 0x47bb52
push eax
call fcn.0065e732
add esp, 4
mov ecx, dword [esp + 0x108]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret