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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xd8
mov ecx, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 0x10]
xor edx, edx
mov ecx, dword [ecx + 0x1964]
cmp ecx, dword [ebx]
setl al
cmp esi, 1
sete byte [esp + 0x13]
cmp dword [ebx + 0xc], esi
mov byte [esp + 0x40], al
jne 0x1008a7e9
mov edi, dword [ebx + 4]
test edi, edi
je 0x1008a817
cmp dword [ebx + 8], 0
jne 0x1008a819
xor edi, edi
xor edx, edx
dec edx
mov dword [ebx + 4], edi
mov dword [ebx + 8], edi
mov dword [ebx + 0x4c], 0x20
mov dword [ebx + 0x54], edi
mov dword [ebx + 0x190e8], edx
mov dword [ebx + 0x3948], edx
mov dword [ebx + 0x14], edx
xor edx, edx
mov word [ebx + 0x18], 0xffff
jmp 0x1008a819
xor edi, edi
mov al, byte [esp + 0x13]
xor ecx, ecx
cmp dword [ebx + 0x58], 0
mov cl, al
mov eax, ecx
je 0x1008a832
mov dword [ebx + 0x58], 0
jmp 0x1008a844
mov ecx, esi
mov edx, dword [ebx + 0x4c]
mov esi, dword [ebx + 0x54]
mov dword [ebx + 0x48], edx
mov dword [ebx + 0x50], esi
xor edx, edx
mov esi, ecx
inc eax
test edi, edi
mov dword [esp + 0x58], eax
je 0x1008ae27
cmp esi, 1
jne 0x1008abc5
cmp dword [ebx + 0x30], 0
je 0x1008abc5
mov esi, dword [ebx + 0xbc]
mov ecx, dword [ebx + 0x68]
mov eax, 0x18
mov edi, 0xc
test esi, esi
mov dword [esp + 0x1c], ecx
cmove edi, eax
test ecx, ecx
je 0x1008aa73
mov eax, dword [ebp + 0xc]
movd xmm0, dword [0x101b3d20]
movsd xmm1, qword [0x101b3d28]
movd xmm2, dword [0x10187150]
mov dword [esp + 0xc], esi
mov dword [esp + 0x18], edi
lea ecx, [eax + 0x2a9c0]
lea ebx, [eax + 0x2ab70]
xor eax, eax
inc eax
mov dword [esp + 4], ecx
mov ecx, eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x14], ecx
movzx ecx, byte [eax + ecx + 0x6c]
cmp dword [eax + ecx*4 + 0x4bb60], 0
mov dword [esp + 8], ecx
je 0x1008aa57
xor edx, edx
jmp 0x1008a906
pxor xmm4, xmm4
cmp ecx, 0xffffff6b
jl 0x1008aa0f
add ecx, 0x95
xor eax, eax
inc eax
shl eax, cl
movd xmm4, eax
jmp 0x1008aa0f
mov eax, dword [esp + 4]
test esi, esi
movzx ecx, byte [eax + edx - 0x157a0]
je 0x1008a95c
lea eax, [ecx + 0x85]
movdqa xmm3, xmm0
cmp eax, 0xfe
ja 0x1008a934
shl ecx, 0x17
add ecx, 0x43000000
movd xmm3, ecx
mov eax, dword [esp + 4]
mov ecx, edi
movzx eax, byte [eax + edx]
sub ecx, eax
lea eax, [ecx + 0x7e]
cmp eax, 0xfe
ja 0x1008a9b8
shl ecx, 0x17
add ecx, 0x3f800000
movd xmm4, ecx
jmp 0x1008aa0f
mov eax, ecx
movdqa xmm3, xmm0
shr eax, 1
lea esi, [eax + 0x85]
cmp esi, 0xfe
ja 0x1008a97e
shl eax, 0x17
add eax, 0x43000000
movd xmm3, eax
mov eax, dword [esp + 4]
cvtss2sd xmm3, xmm3
and ecx, 1
mulsd xmm3, qword [ecx*8 + 0x101b58e8]
movzx esi, byte [eax + edx]
mov eax, edi
sub eax, esi
mov ecx, eax
sar ecx, 1
lea edi, [ecx + 0x7e]
cmp edi, 0xfe
ja 0x1008a9ca
shl ecx, 0x17
add ecx, 0x3f800000
movd xmm4, ecx
jmp 0x1008a9ef
cmp ecx, 0x80
jle 0x1008a8e2
movdqa xmm4, xmm0
jmp 0x1008aa0f
cmp eax, 0x101
movdqa xmm4, xmm0
jg 0x1008a9ef
pxor xmm4, xmm4
cmp eax, 0xfffffed6
jl 0x1008a9ef
add ecx, 0x95
xor eax, eax
inc eax
shl eax, cl
movd xmm4, eax
cvtss2sd xmm4, xmm4
and esi, 1
mov edi, dword [esp + 0x18]
cvtsd2ss xmm3, xmm3
mulsd xmm4, qword [esi*8 + 0x101b58e8]
mov esi, dword [esp + 0xc]
cvtsd2ss xmm4, xmm4
xorps xmm5, xmm5
cvtss2sd xmm5, xmm3
ucomisd xmm5, xmm1
movdqa xmm5, xmm2
ja 0x1008aa24
movdqa xmm5, xmm3
movdqa xmm3, xmm4
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 8]
addss xmm3, xmm2
divss xmm5, xmm3
movss dword [ebx + edx*4 - 0x157a0], xmm5
mulss xmm5, xmm4
movss dword [ebx + edx*4], xmm5
inc edx
cmp edx, dword [eax + ecx*4 + 0x4bb60]
jb 0x1008a906
mov ecx, dword [esp + 0x14]
add dword [esp + 4], 0x30
add ebx, 0xc0
cmp ecx, dword [esp + 0x1c]
lea ecx, [ecx + 1]
jne 0x1008a8c0
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx + 0x74]
test eax, eax
mov dword [esp + 8], eax
je 0x1008ae1e
mov ecx, dword [ebx + 0x4bb68]
movq xmm0, qword [0x101b3d28]
movss xmm1, dword [0x10187150]
movd xmm2, dword [0x101b3d20]
xor eax, eax
lea edx, [ebx + 0x2af54]
lea esi, [ebx + 0x2af35]
inc eax
test ecx, ecx
mov dword [esp + 4], eax
je 0x1008aba7
xor eax, eax
movzx edi, byte [esi + eax - 0x157a0]
mov ebx, 0x85
mov ecx, 6
sub ebx, edi
sub ecx, edi
cmp ebx, 0xfe
ja 0x1008aaed
shl ecx, 0x17
add ecx, 0x40000000
movd xmm3, ecx
jmp 0x1008ab11
cmp ecx, 0x7f
movdqa xmm3, xmm2
jg 0x1008ab11
pxor xmm3, xmm3
cmp ecx, 0xffffff6a
jl 0x1008ab11
add ecx, 0x96
xor edi, edi
inc edi
shl edi, cl
movd xmm3, edi
movzx edi, byte [esi + eax]
mov ebx, 0x8a
mov ecx, 0xc
sub ebx, edi
sub ecx, edi
cmp ebx, 0xfe
ja 0x1008ab3d
mov ebx, dword [ebp + 0xc]
shl ecx, 0x17
add ecx, 0x3f800000
movd xmm4, ecx
jmp 0x1008ab67
mov ebx, dword [ebp + 0xc]
cmp ecx, 0x80
movdqa xmm4, xmm2
jg 0x1008ab67
pxor xmm4, xmm4
cmp ecx, 0xffffff6b
jl 0x1008ab67
add ecx, 0x95
xor edi, edi
inc edi
shl edi, cl
movd xmm4, edi
xorps xmm5, xmm5
cvtss2sd xmm5, xmm3
ucomisd xmm0, xmm5
jb 0x1008beba
movdqa xmm5, xmm4
addss xmm5, xmm1
divss xmm3, xmm5
movss dword [edx + eax*4 - 0x157a0], xmm3
mulss xmm3, xmm4
movss dword [edx + eax*4], xmm3
inc eax
mov ecx, dword [ebx + 0x4bb68]
cmp eax, ecx
jb 0x1008aac0
jmp 0x1008aba9
xor ecx, ecx
mov eax, dword [esp + 4]
add edx, 0x14
add esi, 5
cmp eax, dword [esp + 8]
lea eax, [eax + 1]
jb 0x1008aab2
jmp 0x1008ae1e
lea eax, [ebx + 0x153d0]
movd xmm0, dword [0x101b3d20]
movsd xmm1, qword [0x101b3d28]
mov dword [esp + 0x24], eax
lea eax, [ebx + 0x15220]
mov dword [esp + 0x20], eax
lea eax, [ebx + 0x157b4]
mov dword [esp + 0x30], eax
lea eax, [ebx + 0x15795]
mov dword [esp + 0x38], eax
xor eax, eax
mov dword [esp + 0x28], eax
imul eax, eax, 0x157a0
mov dword [esp + 0x1c], eax
mov eax, dword [ebx + eax + 0x68]
test eax, eax
mov dword [esp + 0x2c], eax
je 0x1008ad39
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
lea eax, [eax + ecx + 0xbc]
mov ecx, dword [esp + 0x24]
mov dword [esp + 8], eax
mov dword [esp + 0x14], ecx
xor ecx, ecx
inc ecx
mov edx, ecx
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xc], edx
lea esi, [eax + ecx]
mov ecx, edx
movzx ecx, byte [edx + esi + 0x6c]
mov dword [esp + 0x18], esi
cmp dword [eax + ecx*4 + 0x4bb60], 0
mov dword [esp + 4], ecx
je 0x1008ad1d
mov esi, dword [esp + 0x14]
xor eax, eax
mov ecx, dword [esp + 8]
movzx edi, byte [ebx + eax]
cmp dword [ecx], 0
je 0x1008acb8
lea edx, [edi + 0x84]
movdqa xmm2, xmm0
cmp edx, 0xfe
ja 0x1008ac9d
shl edi, 0x17
add edi, 0x42800000
movd xmm2, edi
mov ecx, dword [esp + 0xc]
movd dword [esi], xmm2
lea edx, [ecx + ecx*2]
shl edx, 6
add edx, dword [esp + 0x18]
lea edi, [edx + eax*4 + 0x15310]
jmp 0x1008acf5
mov edx, edi
movdqa xmm2, xmm0
shr edx, 1
lea ecx, [edx + 0x84]
cmp ecx, 0xfe
ja 0x1008acdb
shl edx, 0x17
add edx, 0x42800000
movd xmm2, edx
cvtss2sd xmm2, xmm2
and edi, 1
mulsd xmm2, qword [edi*8 + 0x101b58e8]
mov edi, esi
cvtsd2ss xmm2, xmm2
movd dword [esi], xmm2
cvtss2sd xmm2, xmm2
ucomisd xmm2, xmm1
jbe 0x1008ad05
mov dword [edi], 0x3f800000
mov ecx, dword [ebp + 0xc]
mov edx, dword [esp + 4]
inc eax
add esi, 4
cmp eax, dword [ecx + edx*4 + 0x4bb60]
jb 0x1008ac71
mov edx, dword [esp + 0xc]
add dword [esp + 0x14], 0xc0
add ebx, 0x30
cmp edx, dword [esp + 0x2c]
lea edx, [edx + 1]
jne 0x1008ac40
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x1c]
mov eax, dword [eax + ecx + 0x74]
test eax, eax
mov dword [esp + 8], eax
je 0x1008adec
mov eax, dword [ebp + 0xc]
mov edx, dword [esp + 0x38]
mov esi, dword [esp + 0x30]
mov ecx, dword [eax + 0x4bb68]
xor eax, eax
inc eax
test ecx, ecx
mov dword [esp + 4], eax
je 0x1008add3
xor ebx, ebx
movzx eax, byte [edx + ebx]
mov edi, 0x84
mov ecx, 6
sub edi, eax
sub ecx, eax
cmp edi, 0xfe
ja 0x1008ad97
shl ecx, 0x17
add ecx, 0x3f800000
movd xmm2, ecx
jmp 0x1008adbe
cmp ecx, 0x80
movdqa xmm2, xmm0
jg 0x1008adbe
pxor xmm2, xmm2
cmp ecx, 0xffffff6b
jl 0x1008adbe
add ecx, 0x95
xor eax, eax
inc eax
shl eax, cl
movd xmm2, eax
mov eax, dword [ebp + 0xc]
movd dword [esi + ebx*4], xmm2
inc ebx
mov ecx, dword [eax + 0x4bb68]
cmp ebx, ecx
jb 0x1008ad6e
jmp 0x1008add5
xor ecx, ecx
mov eax, dword [esp + 4]
add esi, 0x14
add edx, 5
cmp eax, dword [esp + 8]
lea eax, [eax + 1]
jne 0x1008ad64
mov eax, dword [esp + 0x28]
add dword [esp + 0x24], 0x157a0
add dword [esp + 0x20], 0x157a0
add dword [esp + 0x30], 0x157a0
add dword [esp + 0x38], 0x157a0
mov ebx, dword [ebp + 0xc]
inc eax
cmp eax, dword [esp + 0x58]
jb 0x1008abff
xor edx, edx
mov dword [ebx + 8], 0
mov al, byte [esp + 0x40]
lea ecx, [ebx + 0x5d0c0]
lea edi, [ebx + 0x5f1a0]
lea esi, [ebx + 0x5f6a0]
mov dword [esp + 0x68], ecx
lea ecx, [ebx + 0x5d600]
mov dword [esp + 0x40], edi
mov dword [esp + 0x9c], esi
mov dword [esp + 0x7c], ecx
lea ecx, [ebx + 0x150a0]
mov dword [esp + 0x54], ecx
lea ecx, [ebx + 0x4e4d0]
mov dl, al
lea eax, [ebx + 0x5f728]
mov dword [esp + 0x5c], ecx
lea ecx, [ebx + 0x5dc90]
mov dword [esp + 0x44], eax
lea eax, [ebx + 0x5f2a0]
mov dword [esp + 0x50], ecx
lea ecx, [ebx + 0x5ec50]
mov dword [esp + 0x74], edx
xor edx, edx
mov dword [esp + 0x98], eax
lea eax, [ebx + 0x4bcc0]
mov dword [esp + 0x94], ecx
mov ecx, ebx
mov dword [esp + 0x4c], eax
lea eax, [ebx + 0x5cec0]
mov dword [esp + 0x88], eax
lea eax, [ebx + 0x5ccc0]
mov dword [esp + 0x84], eax
lea eax, [ebx + 0x4e4c0]
mov dword [esp + 0x80], eax
lea eax, [ebx + 0x4bc04]
mov dword [esp + 0x70], eax
lea eax, [ebx + 0x4bbd2]
mov dword [esp + 0x6c], eax
lea eax, [ebx + 0x14]
mov dword [esp + 0x78], eax
lea eax, [ebx + 0x3960]
imul esi, edx, 0x157a0
mov dword [esp + 0x64], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x90], edx
test edx, edx
mov edx, ebx
lea ecx, [ebx + esi + 0x7960]
mov dword [esp + 0x34], esi
mov dword [esp + 0x48], ecx
mov edi, dword [ecx]
lea ecx, [ebx + esi + 0x24c0]
mov ebx, dword [ebp + 0x18]
mov eax, dword [eax + 0x151c]
cmove ebx, dword [ebp + 0x14]
mov dword [esp + 0xc], eax
lea eax, [edx + esi + 0x34c0]
push 0x480
push eax
mov esi, ecx
push ecx
call fcn.101613e0
add esp, 0xc
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x34]
lea eax, [eax + ecx + 0x2940]
push 0x1000
push ebx
push eax
call fcn.101613e0
add esp, 0xc
shl edi, 0xd
mov eax, 0x20
add edi, dword [esp + 0x64]
mov dword [esp + 4], edi
mov dword [esp + 8], eax
push 0x140
mov ebx, esi
push esi
push 0x102bd580
mov edi, dword [esp + 0x4c]
push edi
mov eax, dword [esp + 0x1c]
call dword [eax + 0x1c]
add esp, 0x10
push edi
mov esi, dword [ebp + 0xc]
call dword [esi + 0x5f728]
add esp, 4
push edi
call dword [esi + 0x5f734]
add esp, 4
push dword [esp + 0x98]
push edi
push dword [esp + 0xa4]
call dword [esi + 0x5f6cc]
add esp, 0xc
push edi
mov edi, dword [esp + 8]
push edi
call dword [esi + 0x5f738]
mov eax, dword [esp + 0x10]
add esp, 8
sub ebx, 0xffffff80
add edi, 0x100
dec eax
mov esi, ebx
mov dword [esp + 4], edi
jne 0x1008af7e
mov eax, dword [esp + 0x34]
mov ebx, dword [ebp + 0xc]
mov esi, dword [esp + 0x48]
lea eax, [ebx + eax + 0x3960]
push dword [esi]
push eax
push dword [esp + 0x54]
push ebx
push dword [ebp + 8]
call dword [ebx + 0x5f760]
mov eax, esi
add esp, 0x14
xor byte [esi], 1
cmp dword [ebx + 4], 0
je 0x1008bd4d
push dword [ebx + 0x34]
push dword [esp + 0x50]
push dword [esp + 0x90]
push dword [esp + 0x90]
push dword [esp + 0x54]
call dword [ebx + 0x5f76c]
add esp, 0x14
cmp dword [ebx + 0x4bb68], 0
mov edi, dword [esp + 0x60]
movss xmm2, dword [0x101b3d30]
movss xmm3, dword [0x101b3d48]
je 0x1008b0cc
xor eax, eax
movzx ecx, byte [edi + eax + 0x7f]
movzx edx, byte [edi + eax + 0x84]
movaps xmm0, xmm2
add edx, ecx
cmp edx, 1
je 0x1008b088
movss xmm0, dword [ecx*4 + 0x101b58f8]
movss xmm1, dword [edi + eax*4 + 0x394c]
xor ecx, ecx
ucomiss xmm1, xmm0
seta cl
mulss xmm0, dword [ecx*4 + 0x101b3d38]
mulss xmm1, dword [ecx*4 + 0x101b3d40]
addss xmm1, xmm0
movaps xmm0, xmm1
cmpltss xmm0, xmm3
andnps xmm0, xmm1
movss dword [edi + eax*4 + 0x394c], xmm0
inc eax
cmp eax, dword [ebx + 0x4bb68]
jb 0x1008b068
mov eax, dword [esp + 0x34]
mov ecx, dword [ebx + eax + 0x68]
test ecx, ecx
je 0x1008beba
lea edx, [ebx + eax + 0x68]
mov esi, dword [ebx + 0x4c]
mov dword [esp + 0x3c], edx
mov edx, eax
mov eax, dword [ebx + 0x4bcb0]
test eax, eax
je 0x1008b23c
lea edi, [ebx + edx + 0x157dc]
lea edx, [ebx + edx]
lea ecx, [ecx + edx + 0x157dc]
mov dword [esp + 0x28], edi
xor edi, edi
mov dword [esp + 0x24], edx
mov dword [esp + 0x20], ecx
xor ecx, ecx
cmp byte [ebx + ecx + 0x4bcb4], 0
je 0x1008b22e
mov edx, esi
mov dword [esp + 8], 0
mov dword [esp + 0x2c], ecx
movzx eax, byte [ebx + ecx + 0x4bcba]
mov ecx, dword [ebx + 0x4bb68]
mov esi, edx
jmp 0x1008b147
inc edi
cmp edi, ecx
ja 0x1008b15a
mov edx, dword [ebp + 0xc]
movzx edx, word [edx + edi*2 + 0x4bc66]
cmp esi, edx
jge 0x1008b146
test edi, edi
jle 0x1008b267
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
mov dword [esp + 4], esi
mov esi, dword [esp + 8]
dec edi
mov edx, dword [esp + 0x28]
movzx ecx, byte [ecx]
movd xmm0, dword [ebx + edi*4 + 0x394c]
mov ebx, dword [ebp + 0xc]
add eax, esi
movzx edx, byte [edx]
add ecx, ecx
add edx, edx
mov dword [esp + 0x18], ecx
mov ecx, eax
lea eax, [ebx + eax*8 + 0x5cec0]
mov dword [esp + 0xc], eax
lea eax, [ebx + ecx*8 + 0x5ccc0]
mov dword [esp + 0x14], eax
lea eax, [ecx + ecx*4]
shl eax, 6
lea eax, [ebx + eax + 0x4bcd0]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 4]
lea eax, [eax + eax*4]
shl eax, 6
lea eax, [ebx + eax + 0x4e4d0]
sub esp, 0x1c
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0x38]
mov dword [esp], eax
movd dword [esp + 0x10], xmm0
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], edx
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 8], ecx
call dword [ebx + 0x5f748]
add esp, 0x1c
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x2c]
inc esi
mov dword [esp + 8], esi
inc eax
mov edx, eax
movzx eax, byte [ebx + ecx + 0x4bcb4]
cmp esi, eax
jb 0x1008b134
mov eax, dword [ebx + 0x4bcb0]
mov esi, edx
inc ecx
cmp ecx, eax
jb 0x1008b118
mov eax, dword [ebx + 0x4c]
jmp 0x1008b23e
mov eax, esi
add eax, dword [ebx + 0x54]
sub eax, esi
jbe 0x1008b267
mov edx, dword [ebp + 0xc]
lea ecx, [esi + esi*4]
shl eax, 6
shl ecx, 6
lea eax, [eax + eax*4]
lea ecx, [edx + ecx + 0x4e4c0]
push eax
push 0
push ecx
call fcn.10161ee0
add esp, 0xc
mov ebx, dword [ebp + 0xc]
mov esi, dword [esp + 0x34]
xor edi, edi
lea eax, [ebx + esi + 0x150a0]
push 0x150
push edi
push eax
call fcn.10161ee0
mov eax, esi
add esp, 0xc
mov ecx, dword [esp + 0x3c]
mov dword [esp + 4], 0
cmp dword [ecx], edi
je 0x1008b546
lea ecx, [ebx + eax + 0x74]
mov edx, dword [esp + 0x68]
xor edi, edi
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x7c]
lea eax, [ebx + eax]
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], ecx
mov ecx, 0x4bc04
mov edx, 0x4bbd2
mov dword [esp + 0xc], eax
movzx eax, byte [edi + eax + 0x6d]
test eax, eax
cmove ecx, edx
mov edx, dword [esp + 0x70]
cmove edx, dword [esp + 0x6c]
mov dword [esp + 4], edx
mov edx, ebx
movzx ebx, word [ebx + ecx]
cmp dword [edx + 0x4c], ebx
jne 0x1008b689
mov eax, dword [edx + eax*4 + 0x4bb60]
lea ecx, [edi + 1]
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], eax
test eax, eax
mov eax, dword [esp + 4]
je 0x1008b372
xor edi, edi
mov edx, edi
inc edi
movzx ecx, word [eax + edx*2 + 2]
cmp bx, cx
jae 0x1008b36a
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x20]
movzx ebx, bx
mov dword [esp + 8], edi
lea eax, [eax + eax*2]
shl eax, 6
add eax, dword [esp + 0xc]
lea eax, [eax + edx*4 + 0x15310]
mov ecx, dword [ebp + 0xc]
mov edi, esi
mov ecx, dword [ecx + 0x4c]
shl ecx, 2
sub edi, ecx
mov ecx, dword [eax]
mov dword [edi + ebx*4], ecx
mov ecx, dword [esp + 4]
inc ebx
movzx ecx, word [ecx + edx*2 + 2]
cmp ebx, ecx
jb 0x1008b342
mov eax, dword [esp + 4]
mov edi, dword [esp + 8]
cmp edi, dword [esp + 0x18]
mov ebx, ecx
jne 0x1008b315
mov ecx, dword [esp + 0x28]
cmp dword [ecx], 2
jb 0x1008b395
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
mov al, byte [eax + edx + 0x157dc]
cmp al, byte [ecx + 0x15772]
setae al
jmp 0x1008b397
xor eax, eax
mov edi, dword [ebp + 0xc]
mov edx, dword [edi + 0x4bb68]
test edx, edx
je 0x1008b423
movzx eax, al
xor ecx, ecx
inc eax
mov dword [esp + 0x38], eax
movzx eax, word [edi + 0x4bc66]
mov ebx, ecx
inc ecx
mov dword [esp + 8], ebx
movzx ebx, word [edi + ebx*2 + 0x4bc68]
cmp ax, bx
jae 0x1008b41a
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0xc]
mov esi, dword [ebp + 0xc]
movzx eax, ax
lea ecx, [ecx + ecx*4]
lea ecx, [edx + ecx*4]
mov edx, dword [esp + 8]
lea ecx, [ecx + edx*4 + 0x157a0]
mov edx, dword [esp + 0x24]
mov edi, dword [esi + 0x4c]
mov ebx, edx
shl edi, 2
sub ebx, edi
mov edi, dword [ecx]
mov dword [ebx + eax*4], edi
mov edi, dword [esp + 8]
inc eax
movzx ebx, word [esi + edi*2 + 0x4bc68]
cmp eax, ebx
jb 0x1008b3f0
mov edx, dword [esi + 0x4bb68]
mov ecx, dword [esp + 0x2c]
mov edi, dword [ebp + 0xc]
cmp ecx, edx
mov eax, ebx
jb 0x1008b3b5
mov edx, dword [edi + 0x4bb64]
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 4]
test edx, edx
je 0x1008b4ab
xor ecx, ecx
cmp dword [ebx - 0x10], 0
je 0x1008b4a6
movzx eax, word [edi + ecx*2 + 0x4bc04]
movzx edx, word [edi + ecx*2 + 0x4bc06]
mov esi, dword [esp + 0x14]
add edx, eax
mov eax, ebx
mov ebx, dword [esp + 0xc]
shr edx, 1
sub edx, dword [edi + 0x4c]
cmp esi, dword [eax + 0x38d4]
mov bl, byte [ecx + ebx + 0x89]
jge 0x1008b47d
mov eax, dword [esp + 0xc]
cmp byte [edx + eax + 0x15070], 1
je 0x1008b47d
xor ebx, ebx
mov eax, dword [esp + 0x1c]
mov edi, dword [ebp + 0xc]
inc ecx
lea eax, [eax + eax*2]
shl eax, 4
add eax, dword [esp + 0xc]
mov byte [edx + eax + 0x15070], bl
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 4]
mov edx, dword [edi + 0x4bb64]
jmp 0x1008b4a7
inc ecx
cmp ecx, edx
jb 0x1008b437
cmp dword [esp + 0x18], 0
mov ebx, edi
je 0x1008b513
xor esi, esi
movzx edi, word [eax + esi*2]
movzx eax, word [eax + esi*2 + 2]
mov ebx, dword [ebx + 0x4c]
inc esi
cmp di, ax
jae 0x1008b4db
mov edx, dword [esp + 0x30]
mov ecx, edi
sub edx, ebx
cmp byte [edx + ecx], 0
jne 0x1008b4df
inc ecx
cmp ecx, eax
jb 0x1008b4d0
xor edx, edx
jmp 0x1008b4e1
mov dl, 1
mov ecx, dword [esp + 0x14]
sub eax, edi
sub edi, ebx
mov ebx, dword [ebp + 0xc]
movzx edx, dl
lea ecx, [ecx + ecx*2]
shl ecx, 4
add ecx, ebx
lea ecx, [edi + ecx + 0x5db40]
push eax
push edx
push ecx
call fcn.10161ee0
add esp, 0xc
cmp esi, dword [esp + 0x18]
mov eax, dword [esp + 4]
jne 0x1008b4b6
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov edi, dword [esp + 0x1c]
add dword [esp + 0x30], 0x30
mov eax, dword [eax]
add edx, 0xc0
add ecx, 0xc0
mov dword [esp + 4], eax
cmp edi, eax
mov eax, dword [esp + 0x34]
jb 0x1008b2b6
mov edi, dword [esp + 4]
lea ecx, [ebx + eax + 0x60]
lea edx, [ebx + eax]
mov dword [esp + 0x8c], ecx
lea ecx, [ebx + eax + 0x3944]
mov dword [esp + 0x20], edx
mov dword [esp + 0x38], ecx
lea eax, [edi + edi*2]
shl eax, 4
movaps xmm0, xmmword [eax + edx + 0x15090]
movaps xmmword [ecx + 0x1174c], xmm0
movaps xmm0, xmmword [eax + edx + 0x15070]
movaps xmm1, xmmword [eax + edx + 0x15080]
movaps xmmword [ecx + 0x1173c], xmm1
movaps xmmword [ecx + 0x1172c], xmm0
mov ecx, dword [ebx + 0x4c]
cmp dword [ebx + 0x28], 0
je 0x1008b6c5
test edi, edi
je 0x1008bd19
lea ecx, [ecx + ecx*4]
mov eax, dword [ebx + 0x54]
mov edx, dword [esp + 0x50]
shl ecx, 6
add ecx, dword [esp + 0x5c]
mov dword [esp + 0x14], ecx
xor ecx, ecx
mov dword [esp + 4], edi
lea edi, [ecx + 1]
test eax, eax
mov eax, 0
mov dword [esp + 0x18], edi
mov edi, dword [esp + 4]
je 0x1008b672
mov eax, dword [esp + 0x20]
movss xmm1, dword [0x10187134]
xor ebx, ebx
mov dword [esp + 0xc], edx
movzx esi, byte [ecx + eax + 0x157dd]
movzx edi, byte [ecx + eax + 0x157dc]
mov eax, esi
add esi, esi
sub eax, edi
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
lea eax, [edi + edi]
shl edi, 4
divss xmm1, xmm0
add edi, dword [esp + 0x14]
sub esi, eax
mov dword [esp + 4], esi
movss dword [esp + 8], xmm1
push dword [esp + 4]
push edi
mov esi, dword [ebp + 0xc]
call dword [esi + 0x5f72c]
mov edx, dword [esp + 0x14]
add esp, 8
fstp dword [esp + 0xa4]
add edi, 0x140
movss xmm0, dword [esp + 0xa4]
mulss xmm0, dword [esp + 8]
movss dword [edx + ebx*4], xmm0
inc ebx
mov eax, dword [esi + 0x54]
cmp ebx, eax
jb 0x1008b62b
mov ecx, dword [esp + 0x3c]
mov ebx, dword [ebp + 0xc]
mov edi, dword [ecx]
mov ecx, dword [esp + 0x18]
add edx, 0xc0
cmp ecx, edi
jb 0x1008b5c6
jmp 0x1008b842
xor eax, eax
mov ebx, edx
mov dword [edx + 4], eax
mov dword [edx + 8], eax
mov dword [edx + 0x4c], 0x20
mov dword [edx + 0x54], eax
mov eax, 0xffffffff
mov dword [edx + 0x190e8], eax
mov ecx, eax
mov dword [edx + 0x3948], eax
mov eax, dword [esp + 0x78]
mov dword [eax], ecx
mov word [eax + 4], 0xffff
mov eax, dword [esp + 0x48]
jmp 0x1008bd4d
test edi, edi
je 0x1008bd19
mov eax, dword [esp + 0x50]
shl ecx, 2
sub eax, ecx
xor ecx, ecx
mov dword [esp + 0x2c], eax
mov eax, ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 4], edi
mov edi, dword [esp + 0x70]
movzx ecx, byte [eax + ecx + 0x6d]
test ecx, ecx
cmove edi, dword [esp + 0x6c]
xor edx, edx
cmp dword [ebx + ecx*4 + 0x4bb60], edx
lea ecx, [eax + 1]
je 0x1008b82d
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x20]
xor esi, esi
mov dword [esp + 8], edi
lea eax, [eax + ecx + 0x6d]
movzx ecx, byte [eax + 0x15770]
movzx edx, byte [eax + 0x1576f]
mov dword [esp + 0x1c], eax
mov eax, ecx
add ecx, ecx
sub eax, edx
add eax, eax
mov dword [esp + 0x24], eax
lea eax, [edx + edx]
shl edx, 4
add edx, dword [esp + 0x5c]
sub ecx, eax
movzx eax, word [edi]
mov dword [esp + 0xc], ecx
mov ecx, edi
mov dword [esp + 0x28], edx
movzx ecx, word [ecx + esi*2 + 2]
movzx edx, ax
mov edi, esi
xorps xmm1, xmm1
mov dword [esp + 0x18], edx
cmp dx, cx
mov dword [esp + 0x14], ecx
jae 0x1008b7cb
mov ebx, dword [esp + 0x18]
xorps xmm1, xmm1
lea esi, [ebx + ebx*4]
shl esi, 6
add esi, dword [esp + 0x28]
movss dword [esp + 4], xmm1
push dword [esp + 0xc]
push esi
mov eax, dword [ebp + 0xc]
call dword [eax + 0x5f72c]
movss xmm1, dword [esp + 0xc]
add esp, 8
fstp dword [esp + 0xa0]
inc ebx
add esi, 0x140
mov eax, dword [esp + 8]
addss xmm1, dword [esp + 0xa0]
movzx ecx, word [eax + edi*2 + 2]
cmp ebx, ecx
jb 0x1008b77c
mov eax, dword [esp + 8]
mov ebx, dword [ebp + 0xc]
movzx eax, word [eax + edi*2]
movzx edx, ax
cmp ax, cx
lea esi, [edi + 1]
mov eax, ecx
jae 0x1008b807
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x2c]
mov ebx, dword [esp + 8]
sub eax, dword [esp + 0x18]
imul eax, dword [esp + 0x24]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
divss xmm1, xmm0
movss dword [ecx + edx*4], xmm1
inc edx
movzx eax, word [ebx + edi*2 + 2]
cmp edx, eax
jb 0x1008b7f5
mov ebx, dword [ebp + 0xc]
mov ecx, dword [esp + 0x1c]
movzx ecx, byte [ecx]
cmp esi, dword [ebx + ecx*4 + 0x4bb60]
mov ecx, dword [esp + 8]
jb 0x1008b751
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x30]
mov eax, dword [eax]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x2c]
mov edi, dword [esp + 4]
add eax, 0xc0
cmp ecx, edi
jb 0x1008b6d8
test edi, edi
je 0x1008bd19
mov eax, dword [esp + 0x34]
lea eax, [ebx + eax + 0x3948]
mov dword [esp + 0x30], eax
xor eax, eax
mov ecx, dword [esp + 0x30]
mov dl, 1
cmp eax, dword [ecx]
je 0x1008b86e
mov ecx, dword [esp + 0x38]
cmp eax, dword [ecx]
sete dl
cmp dword [ebx + 0x4bb6c], 0
je 0x1008bd0e
xor dl, 1
movzx ecx, dl
mov byte [esp + 0x1c], dl
mov edx, ebx
xorps xmm0, xmm0
cvtsi2ss xmm0, ecx
lea ecx, [eax + 1]
shl eax, 4
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x54]
lea eax, [eax + eax*2]
movss dword [esp + 0x14], xmm0
lea ecx, [ecx + eax]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x68]
lea ecx, [ecx + eax*4]
mov dword [esp + 4], ecx
lea ecx, [ebx + eax]
movzx ebx, word [ebx + 0x4bc72]
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x50]
lea ecx, [ecx + eax*4]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x94]
lea edi, [ecx + eax*4]
mov ecx, dword [edx + 0x4c]
xor eax, eax
movzx esi, bx
mov ebx, eax
movzx eax, word [edx + eax*2 + 0x4bc74]
sub esi, ecx
mov dword [esp + 8], ebx
sub eax, ecx
cmp esi, eax
jae 0x1008baa3
mov ebx, dword [esp + 0x2c]
mov edx, dword [esp + 4]
movss xmm0, dword [edx + esi*4 + 0x540]
movss xmm2, dword [edx + esi*4]
movaps xmm1, xmm0
addss xmm1, dword [0x10187150]
divss xmm2, xmm1
mulss xmm0, xmm2
cvtss2sd xmm0, xmm0
ucomisd xmm0, qword [0x1019b0c8]
jb 0x1008b939
sqrtsd xmm0, xmm0
jmp 0x1008b969
sub esp, 8
movsd qword [esp], xmm0
movss dword [esp + 0x20], xmm2
call fcn.1016bee0
movss xmm2, dword [esp + 0x20]
mov edx, dword [esp + 0xc]
add esp, 8
fstp qword [esp + 0xc8]
movsd xmm0, qword [esp + 0xc8]
cvtsd2ss xmm0, xmm0
movss dword [edx + esi*4 + 0x1110], xmm0
movzx eax, byte [ebx + esi]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mulss xmm2, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm2
ucomisd xmm0, qword [0x1019b0c8]
jb 0x1008b99c
sqrtsd xmm0, xmm0
jmp 0x1008b9c0
sub esp, 8
movsd qword [esp], xmm0
call fcn.1016bee0
mov edx, dword [esp + 0xc]
add esp, 8
fstp qword [esp + 0xc0]
movsd xmm0, qword [esp + 0xc0]
mov eax, dword [esp + 0xc]
cvtsd2ss xmm0, xmm0
movss dword [edx + esi*4 + 0x1650], xmm0
movss xmm0, dword [edx + esi*4]
cmp byte [eax + esi + 0x5db40], 0
je 0x1008b9f8
movss xmm1, dword [edx + esi*4 + 0x540]
movss xmm2, dword [edx + esi*4 + 0xbd0]
mulss xmm0, xmm1
jmp 0x1008ba10
movss xmm2, dword [edx + esi*4 + 0x540]
movss xmm1, dword [edx + esi*4 + 0xbd0]
mulss xmm2, dword [esp + 0x14]
movss xmm3, dword [0x10187150]
addss xmm1, xmm3
addss xmm2, xmm3
mulss xmm2, xmm1
divss xmm0, xmm2
cvtss2sd xmm0, xmm0
ucomisd xmm0, qword [0x1019b0c8]
jb 0x1008ba3c
sqrtsd xmm0, xmm0
jmp 0x1008ba60
sub esp, 8
movsd qword [esp], xmm0
call fcn.1016bee0
mov edx, dword [esp + 0xc]
add esp, 8
fstp qword [esp + 0xb8]
movsd xmm0, qword [esp + 0xb8]
cvtsd2ss xmm0, xmm0
mov eax, dword [esp + 8]
mov ecx, dword [ebp + 0xc]
addss xmm0, dword [0x101b3d4c]
movss dword [edx + esi*4 + 0x1b90], xmm0
inc esi
movzx eax, word [ecx + eax*2 + 0x4bc74]
mov ecx, dword [ecx + 0x4c]
sub eax, ecx
cmp esi, eax
jb 0x1008b904
mov ebx, dword [esp + 8]
mov edx, dword [ebp + 0xc]
movzx esi, word [edx + ebx*2 + 0x4bc72]
sub esi, ecx
xorps xmm0, xmm0
cmp esi, eax
jae 0x1008bace
mov ecx, dword [esp + 0x28]
sub eax, esi
xorps xmm0, xmm0
lea ecx, [ecx + esi*4]
movss xmm1, dword [ecx - 0xbd0]
movss xmm2, dword [ecx]
add ecx, 4
dec eax
unpcklps xmm1, xmm2
addps xmm0, xmm1
jne 0x1008bab6
addps xmm0, xmmword [0x101b3d50]
mov eax, dword [ebp + 0xc]
movaps xmm1, xmm0
mov esi, dword [eax + 0x24]
shufps xmm1, xmm0, 0xe5
divss xmm0, xmm1
cvtss2sd xmm0, xmm0
ucomisd xmm0, qword [0x1019b0c8]
jb 0x1008bafa
sqrtsd xmm0, xmm0
jmp 0x1008bb1a
sub esp, 8
movsd qword [esp], xmm0
call fcn.1016bee0
add esp, 8
fstp qword [esp + 0xb0]
movsd xmm0, qword [esp + 0xb0]
mov eax, dword [ebp + 0xc]
xorps xmm5, xmm5
movzx ecx, word [eax + ebx*2 + 0x4bc72]
mov edx, dword [eax + 0x4c]
movzx eax, word [eax + ebx*2 + 0x4bc74]
sub ecx, edx
sub eax, edx
cmp ecx, eax
jae 0x1008bba1
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [esi*4 + 0x101b5908]
mov esi, dword [ebp + 0xc]
minss xmm0, dword [0x101b3d60]
movss xmm1, dword [edi + ecx*4 - 0xa80]
movss xmm3, dword [edi + ecx*4]
movaps xmm2, xmm0
mulss xmm2, xmm1
divss xmm2, xmm3
minss xmm2, xmm1
movaps xmm1, xmm0
minss xmm1, xmm3
movss dword [edi + ecx*4 - 0xa80], xmm2
movss dword [edi + ecx*4], xmm1
inc ecx
movzx eax, word [esi + ebx*2 + 0x4bc74]
mov edx, dword [esi + 0x4c]
sub eax, edx
cmp ecx, eax
jb 0x1008bb53
movzx ecx, word [esi + ebx*2 + 0x4bc72]
sub ecx, edx
mov bl, byte [esp + 0x1c]
xorps xmm0, xmm0
cmp ecx, eax
jae 0x1008bc17
sub eax, ecx
lea ecx, [edi + ecx*4]
xorps xmm0, xmm0
movss xmm6, dword [ecx - 0x540]
movss xmm2, dword [ecx]
movss xmm3, dword [ecx - 0xfc0]
movss xmm4, dword [ecx - 0xa80]
movss xmm1, dword [ecx - 0x1b90]
ucomiss xmm5, xmm6
mulss xmm3, xmm2
mulss xmm6, xmm6
setnp dl
sete dh
mulss xmm3, xmm2
add ecx, 4
and dh, dl
addss xmm6, xmm3
and dh, bl
dec eax
movzx edx, dh
xorps xmm3, xmm3
cvtsi2ss xmm3, edx
mulss xmm3, xmm4
mulss xmm3, xmm4
addss xmm3, xmm6
unpcklps xmm1, xmm3
addps xmm0, xmm1
jne 0x1008bbb4
addps xmm0, xmmword [0x101b3d50]
movaps xmm1, xmm0
shufps xmm1, xmm0, 0xe5
divss xmm0, xmm1
cvtss2sd xmm0, xmm0
ucomisd xmm0, qword [0x1019b0c8]
jb 0x1008bc3d
sqrtsd xmm0, xmm0
jmp 0x1008bc5d
sub esp, 8
movsd qword [esp], xmm0
call fcn.1016bee0
add esp, 8
fstp qword [esp + 0xa8]
movsd xmm0, qword [esp + 0xa8]
mov ecx, dword [ebp + 0xc]
mov esi, dword [esp + 8]
mov ebx, ecx
movzx edx, word [ecx + esi*2 + 0x4bc72]
mov ecx, dword [ecx + 0x4c]
movzx ebx, word [ebx + esi*2 + 0x4bc74]
sub edx, ecx
mov eax, ebx
sub eax, ecx
cmp edx, eax
lea eax, [esi + 1]
jae 0x1008bcef
cvtsd2ss xmm0, xmm0
mov dword [esp + 0x18], eax
mov eax, dword [esp + 8]
minss xmm0, dword [0x101b3d64]
movss xmm1, dword [edi + edx*4]
mov ecx, dword [ebp + 0xc]
mulss xmm1, xmm0
movss dword [edi + edx*4], xmm1
movss xmm1, dword [edi + edx*4 - 0xa80]
mulss xmm1, xmm0
movss dword [edi + edx*4 - 0xa80], xmm1
movss xmm1, dword [edi + edx*4 - 0x540]
mulss xmm1, xmm0
movss dword [edi + edx*4 - 0x540], xmm1
inc edx
movzx ebx, word [ecx + eax*2 + 0x4bc74]
mov ecx, dword [ecx + 0x4c]
mov esi, ebx
sub esi, ecx
cmp edx, esi
jb 0x1008bc9a
mov eax, dword [esp + 0x18]
mov edx, dword [ebp + 0xc]
cmp eax, dword [edx + 0x4bb6c]
jb 0x1008b8df
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x24]
mov ebx, edx
mov edi, dword [eax]
mov eax, ecx
jmp 0x1008bd11
inc eax
mov ecx, eax
cmp ecx, edi
jb 0x1008b85b
mov edi, dword [esp + 0x48]
mov ecx, dword [esp + 0x20]
imul eax, dword [edi], 0x4c00
lea eax, [eax + ecx + 0x7970]
push dword [esp + 0x38]
push dword [esp + 0x90]
push ebx
push dword [esp + 0x8c]
push eax
call dword [ebx + 0x5f764]
mov eax, edi
add esp, 0x14
mov edx, dword [esp + 0x34]
mov eax, dword [eax]
mov edi, dword [esp + 0x90]
add edx, ebx
xor ecx, ecx
inc ecx
sub ecx, eax
imul eax, eax, 0x4c00
imul ecx, ecx, 0x4c00
lea eax, [eax + edx + 0x7970]
lea ecx, [ecx + edx + 0x7970]
imul edx, edi, 0x4c00
lea edx, [ebx + edx + 0x534c0]
push edi
push dword [esp + 0x50]
push eax
push ecx
push edx
push ebx
call dword [ebx + 0x5f768]
mov edx, edi
add esp, 0x18
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x60]
inc edx
add dword [esp + 0x54], 0x157a0
add eax, 0x157a0
add ecx, 0x157a0
cmp edx, dword [esp + 0x58]
jb 0x1008aef4
mov eax, dword [ebp + 8]
cmp dword [eax + 0x1970], 1
jne 0x1008be07
cmp dword [ebx + 0x2afa0], 0
je 0x1008be13
mov ecx, dword [ebx + 0x54]
lea eax, [ebx + 0x2afa0]
lea esi, [ebx + 0x534c0]
lea edx, [ebx + 0x580c0]
add ecx, dword [ebx + 0x4c]
push ecx
push edx
mov dword [esp + 0xc], esi
push esi
push eax
mov eax, dword [ebp + 8]
push dword [eax + 4]
call fcn.100854bd
add esp, 0x14
jmp 0x1008be32
lea eax, [ebx + 0x534c0]
mov dword [esp + 4], eax
jmp 0x1008be37
lea eax, [ebx + 0x580c0]
lea ecx, [ebx + 0x534c0]
push 0x4c00
mov dword [esp + 8], ecx
push ecx
push eax
call fcn.101613e0
add esp, 0xc
mov byte [esp + 0x13], 1
mov esi, dword [esp + 0x74]
mov edx, dword [esp + 0x44]
lea ecx, [ebx + 0x5f6e4]
lea eax, [ebx + 0x3940]
lea edi, [ebx + 0xc0]
mov dword [esp + 8], ecx
push esi
push eax
push edi
mov edi, dword [esp + 0x4c]
push edi
push dword [esp + 0x14]
push dword [ebp + 0x14]
mov eax, dword [ebp + 8]
push dword [eax + 0x151c]
call fcn.1008bebf
add esp, 0x1c
cmp byte [esp + 0x13], 0
je 0x1008beb2
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x44]
lea eax, [ebx + 0x190e0]
lea edi, [ebx + 0x15860]
lea ebx, [ebx + 0x580c0]
push esi
push eax
push edi
push dword [esp + 0x4c]
push ebx
push dword [ebp + 0x18]
mov eax, dword [ebp + 8]
push dword [eax + 0x151c]
call fcn.1008bebf
add esp, 0x1c
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
call fcn.1016a210