Function at 0x103515d2
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1041d70b
mov eax, dword fs:[0]
push eax
sub esp, 0x434
mov eax, dword [0x104e6584]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x368], 0
mov ecx, 0x104f753c
call fcn.1015f0d9
xorps xmm0, xmm0
movss dword [ebp - 0x24], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x20], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x1c], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x30], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x28], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x3c], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x38], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x34], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x48], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x44], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x40], xmm0
cmp dword [ebp + 8], 0
je 0x10350e05
call fcn.1015eca1
cmp dword [eax], 0
jne 0x10350e0a
jmp 0x10352737
xor eax, eax
mov byte [ebp - 0x231], al
call fcn.1015c753
mov ecx, dword [eax + 0x84]
mov dword [ebp - 0x2a0], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
mov dword [ebp - 0x294], eax
mov dword [ebp - 0x90], 0x11ab48ff
mov dword [ebp - 0x290], 0x11ab48ff
mov ecx, dword [ebp - 0x2e4]
mov dword [ebp - 0x298], ecx
mov edx, dword [0x104f1694]
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + edx*4]
mov edx, dword [0x104e7288]
cmp edx, dword [ecx + 0x104]
jle 0x10350f15
push 0x104e7288
call fcn.1015cfd7
add esp, 4
cmp dword [0x104e7288], 0xffffffff
jne 0x10350f15
mov dword [ebp - 4], 0
xor eax, eax
mov byte [ebp - 0x2e5], al
xor ecx, ecx
mov byte [ebp - 0x2e6], cl
mov dword [ebp - 0x94], 0xda7d68cb
mov dword [ebp - 0x408], 0xda7d68cb
mov dword [ebp - 0x98], 0x990704d7
push 0x990704d7
lea edx, [ebp - 0x2f4]
push edx
call fcn.1034a5e0
add esp, 8
mov dword [ebp - 0x40c], eax
mov eax, dword [ebp - 0x408]
push eax
mov ecx, dword [ebp - 0x40c]
push ecx
push 0x104e7284
call fcn.103491e0
add esp, 0xc
push 0x1015d874
call fcn.1015f15b
add esp, 4
mov dword [ebp - 4], 0xffffffff
push 0x104e7288
call fcn.1015de0f
add esp, 4
cmp dword [0x104e7284], 0
je 0x10350f2c
mov edx, dword [0x104e7284]
mov dword [ebp - 0x410], edx
jmp 0x10350f36
mov dword [ebp - 0x410], 0
call dword [ebp - 0x410]
mov dword [ebp - 0xb0], eax
cmp dword [ebp - 0x294], 0
je 0x10350f5d
cmp dword [ebp - 0x290], 0
je 0x10350f5d
cmp dword [ebp - 0xb0], 0
jne 0x10350f6c
mov dword [ebp - 0x298], 0
jmp 0x103510a6
mov eax, dword [ebp - 0x294]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0xac], ecx
jmp 0x10350f8c
mov edx, dword [ebp - 0xac]
mov eax, dword [edx + 0x14]
mov dword [ebp - 0xac], eax
cmp dword [ebp - 0xac], 0
je 0x1035109c
mov ecx, dword [ebp - 0xb0]
mov edx, dword [ecx]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x414], eax
mov ecx, dword [ebp - 0xac]
mov edx, dword [ecx]
and edx, 0xffffff
push edx
mov ecx, dword [ebp - 0xb0]
call dword [ebp - 0x414]
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0xb4], 0
je 0x10351097
mov dword [ebp - 0x9c], 0x811c9dc5
mov dword [ebp - 0xa8], 0
mov eax, dword [ebp - 0xa8]
add eax, 1
mov dword [ebp - 0xa8], eax
mov ecx, dword [ebp - 0xb4]
add ecx, dword [ebp - 0xa8]
movsx edx, byte [ecx]
test edx, edx
je 0x10351010
jmp 0x10350fec
xor eax, eax
je 0x10351023
mov ecx, dword [ebp - 0xa8]
add ecx, 1
mov dword [ebp - 0xa8], ecx
mov edx, dword [ebp - 0xa8]
mov dword [ebp - 0xa0], edx
mov dword [ebp - 0xa4], 0
jmp 0x1035104a
mov eax, dword [ebp - 0xa4]
add eax, 1
mov dword [ebp - 0xa4], eax
mov ecx, dword [ebp - 0xa4]
cmp ecx, dword [ebp - 0xa0]
jae 0x1035107b
mov edx, dword [ebp - 0xb4]
add edx, dword [ebp - 0xa4]
movsx eax, byte [edx]
xor eax, dword [ebp - 0x9c]
imul ecx, eax, 0x1000193
mov dword [ebp - 0x9c], ecx
jmp 0x1035103b
mov edx, dword [ebp - 0x9c]
cmp edx, dword [ebp - 0x290]
jne 0x10351097
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x298], eax
jmp 0x103510a6
jmp 0x10350f7d
mov dword [ebp - 0x298], 0
mov dword [ebp - 0xbc], 0
mov ecx, dword [ebp - 0x298]
movsx edx, byte [ecx + 0x10]
mov dword [ebp - 0x418], edx
mov eax, dword [ebp - 0x418]
sub eax, 1
mov dword [ebp - 0x418], eax
cmp dword [ebp - 0x418], 6
ja case.0x103510e2.1
mov ecx, dword [ebp - 0x418]
jmp dword [ecx*4 + 0x10352758]
mov edx, dword [ebp - 0x298]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.ucrtbased.dll_atoi]
add esp, 4
mov dword [ebp - 0xbc], eax
jmp 0x1035118b
mov ecx, dword [ebp - 0x298]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.ucrtbased.dll__wtoi]
add esp, 4
mov dword [ebp - 0xbc], eax
jmp 0x1035118b
mov eax, dword [ebp - 0x298]
movss xmm0, dword [eax + 0xc]
movss dword [ebp - 0xb8], xmm0
cvtss2sd xmm0, dword [ebp - 0xb8]
sub esp, 8
movsd qword [esp], xmm0
call dword [sym.imp.ucrtbased.dll_floor]
add esp, 8
fstp dword [ebp - 0x41c]
fld dword [ebp - 0x41c]
fstp dword [ebp - 0x2fc]
cvttss2si ecx, dword [ebp - 0x2fc]
mov dword [ebp - 0xbc], ecx
jmp 0x1035118b
mov dword [ebp - 0xbc], 0
jmp 0x1035118b
mov edx, dword [ebp - 0x298]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0xbc], eax
cmp dword [ebp - 0xbc], 0
je 0x103511a2
mov ecx, dword [ebp - 0xbc]
mov dword [ebp - 0x420], ecx
jmp 0x103511ac
mov dword [ebp - 0x420], 0
mov edx, dword [ebp - 0x420]
mov dword [ebp - 0x29c], edx
lea eax, [ebp - 0x30c]
mov dword [ebp - 0xc0], eax
mov ecx, dword [ebp - 0xc0]
mov edx, dword [ebp - 0x2a0]
mov dword [ecx], edx
mov eax, dword [ebp - 0xc0]
mov dword [ebp - 0x424], eax
mov ecx, dword [ebp - 0x30c]
mov edx, dword [ecx]
mov dword [ebp - 0x308], edx
mov eax, 9
shl eax, 2
mov ecx, dword [ebp - 0x308]
mov edx, dword [ecx + eax]
mov dword [ebp - 0x304], edx
mov eax, dword [ebp - 0x304]
mov dword [ebp - 0x428], eax
mov ecx, dword [ebp - 0x428]
mov dword [ebp - 0x42c], ecx
mov edx, dword [ebp - 0x29c]
push edx
mov ecx, dword [ebp - 0x2a0]
call dword [ebp - 0x42c]
mov dword [ebp - 0x18], eax
call fcn.1015c753
mov eax, dword [eax + 0x84]
mov dword [ebp - 0xc8], eax
lea ecx, [ebp - 0x318]
mov dword [ebp - 0xc4], ecx
mov edx, dword [ebp - 0xc4]
mov eax, dword [ebp - 0xc8]
mov dword [edx], eax
mov ecx, dword [ebp - 0xc4]
mov dword [ebp - 0x408], ecx
mov edx, dword [ebp - 0x318]
mov eax, dword [edx]
mov dword [ebp - 0x314], eax
mov ecx, 0xc
shl ecx, 2
mov edx, dword [ebp - 0x314]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x310], eax
mov ecx, dword [ebp - 0x310]
mov dword [ebp - 0x40c], ecx
mov edx, dword [ebp - 0x40c]
mov dword [ebp - 0x410], edx
mov ecx, dword [ebp - 0xc8]
call dword [ebp - 0x410]
cmp dword [ebp - 0x18], eax
je 0x103512bb
jmp 0x10352737
xor eax, eax
mov byte [ebp - 0x243], al
xor ecx, ecx
mov byte [ebp - 0x242], cl
xor edx, edx
mov byte [ebp - 0x241], dl
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x2c0], ecx
mov dword [ebp - 0xcc], 0xfd0c5087
mov dword [ebp - 0x2bc], 0xfd0c5087
mov edx, dword [ebp - 0x31c]
mov dword [ebp - 0x2c4], edx
mov eax, dword [0x104f1694]
mov ecx, dword fs:[0x2c]
mov edx, dword [ecx + eax*4]
mov eax, dword [0x104e7288]
cmp eax, dword [edx + 0x104]
jle 0x103513c4
push 0x104e7288
call fcn.1015cfd7
add esp, 4
cmp dword [0x104e7288], 0xffffffff
jne 0x103513c4
mov dword [ebp - 4], 1
xor ecx, ecx
mov byte [ebp - 0x31d], cl
xor edx, edx
mov byte [ebp - 0x31e], dl
mov dword [ebp - 0xec], 0xda7d68cb
mov dword [ebp - 0x408], 0xda7d68cb
mov dword [ebp - 0xf0], 0x990704d7
push 0x990704d7
lea eax, [ebp - 0x32c]
push eax
call fcn.1034a5e0
add esp, 8
mov dword [ebp - 0x40c], eax
mov ecx, dword [ebp - 0x408]
push ecx
mov edx, dword [ebp - 0x40c]
push edx
push 0x104e7284
call fcn.103491e0
add esp, 0xc
push 0x1015d874
call fcn.1015f15b
add esp, 4
mov dword [ebp - 4], 0xffffffff
push 0x104e7288
call fcn.1015de0f
add esp, 4
cmp dword [0x104e7284], 0
je 0x103513da
mov eax, dword [0x104e7284]
mov dword [ebp - 0x410], eax
jmp 0x103513e4
mov dword [ebp - 0x410], 0
call dword [ebp - 0x410]
mov dword [ebp - 0xe4], eax
cmp dword [ebp - 0x2c0], 0
je 0x1035140b
cmp dword [ebp - 0x2bc], 0
je 0x1035140b
cmp dword [ebp - 0xe4], 0
jne 0x1035141a
mov dword [ebp - 0x2c4], 0
jmp 0x10351553
mov ecx, dword [ebp - 0x2c0]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0xe0], edx
jmp 0x1035143a
mov eax, dword [ebp - 0xe0]
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0xe0], ecx
cmp dword [ebp - 0xe0], 0
je 0x10351549
mov edx, dword [ebp - 0xe4]
mov eax, dword [edx]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x414], ecx
mov edx, dword [ebp - 0xe0]
mov eax, dword [edx]
and eax, 0xffffff
push eax
mov ecx, dword [ebp - 0xe4]
call dword [ebp - 0x414]
mov dword [ebp - 0xe8], eax
cmp dword [ebp - 0xe8], 0
je 0x10351544
mov dword [ebp - 0xd4], 0x811c9dc5
mov dword [ebp - 0xd0], 0
mov ecx, dword [ebp - 0xd0]
add ecx, 1
mov dword [ebp - 0xd0], ecx
mov edx, dword [ebp - 0xe8]
add edx, dword [ebp - 0xd0]
movsx eax, byte [edx]
test eax, eax
je 0x103514bd
jmp 0x10351499
xor ecx, ecx
je 0x103514d0
mov edx, dword [ebp - 0xd0]
add edx, 1
mov dword [ebp - 0xd0], edx
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xdc], 0
jmp 0x103514f7
mov ecx, dword [ebp - 0xdc]
add ecx, 1
mov dword [ebp - 0xdc], ecx
mov edx, dword [ebp - 0xdc]
cmp edx, dword [ebp - 0xd8]
jae 0x10351528
mov eax, dword [ebp - 0xe8]
add eax, dword [ebp - 0xdc]
movsx ecx, byte [eax]
xor ecx, dword [ebp - 0xd4]
imul edx, ecx, 0x1000193
mov dword [ebp - 0xd4], edx
jmp 0x103514e8
mov eax, dword [ebp - 0xd4]
cmp eax, dword [ebp - 0x2bc]
jne 0x10351544
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x2c4], ecx
jmp 0x10351553
jmp 0x1035142b
mov dword [ebp - 0x2c4], 0
movss xmm0, dword [0x1044fae8]
movss dword [ebp - 0x2c8], xmm0
mov edx, dword [ebp - 0x2c4]
movsx eax, byte [edx + 0x10]
mov dword [ebp - 0x418], eax
mov ecx, dword [ebp - 0x418]
sub ecx, 1
mov dword [ebp - 0x418], ecx
cmp dword [ebp - 0x418], 6
ja case.0x10351595.3
mov edx, dword [ebp - 0x418]
jmp dword [edx*4 + 0x10352774]
mov eax, dword [ebp - 0x2c4]
mov ecx, dword [eax + 4]
push ecx
call dword [sym.imp.ucrtbased.dll_atof]
add esp, 4
fstp dword [ebp - 0x2c8]
jmp 0x1035162a
mov edx, dword [ebp - 0x2c4]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.ucrtbased.dll__wtof]
add esp, 4
fstp dword [ebp - 0x2c8]
jmp 0x1035162a
mov ecx, dword [ebp - 0x2c4]
movss xmm0, dword [ecx + 0xc]
movss dword [ebp - 0x2c8], xmm0
jmp 0x1035162a
mov edx, dword [ebp - 0x2c4]
cvtsi2ss xmm0, dword [edx + 0xc]
movss dword [ebp - 0x2c8], xmm0
jmp 0x1035162a
mov eax, dword [ebp - 0x2c4]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov ecx, eax
call fcn.1015fa16
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x2c8], xmm0
jmp 0x1035162a
xorps xmm0, xmm0
movss dword [ebp - 0x2c8], xmm0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
mov dword [ebp - 0x2b4], edx
mov dword [ebp - 0xf4], 0xfc0c4ef4
mov dword [ebp - 0x2b0], 0xfc0c4ef4
mov eax, dword [ebp - 0x330]
mov dword [ebp - 0x2b8], eax
mov ecx, dword [0x104f1694]
mov edx, dword fs:[0x2c]
mov eax, dword [edx + ecx*4]
mov ecx, dword [0x104e7288]
cmp ecx, dword [eax + 0x104]
jle 0x1035171d
push 0x104e7288
call fcn.1015cfd7
add esp, 4
cmp dword [0x104e7288], 0xffffffff
jne 0x1035171d
mov dword [ebp - 4], 2
xor edx, edx
mov byte [ebp - 0x331], dl
xor eax, eax
mov byte [ebp - 0x332], al
mov dword [ebp - 0xf8], 0xda7d68cb
mov dword [ebp - 0x41c], 0xda7d68cb
mov dword [ebp - 0xfc], 0x990704d7
push 0x990704d7
lea ecx, [ebp - 0x340]
push ecx
call fcn.1034a5e0
add esp, 8
mov dword [ebp - 0x420], eax
mov edx, dword [ebp - 0x41c]
push edx
mov eax, dword [ebp - 0x420]
push eax
push 0x104e7284
call fcn.103491e0
add esp, 0xc
push 0x1015d874
call fcn.1015f15b
add esp, 4
mov dword [ebp - 4], 0xffffffff
push 0x104e7288
call fcn.1015de0f
add esp, 4
cmp dword [0x104e7284], 0
je 0x10351734
mov ecx, dword [0x104e7284]
mov dword [ebp - 0x424], ecx
jmp 0x1035173e
mov dword [ebp - 0x424], 0
call dword [ebp - 0x424]
mov dword [ebp - 0x104], eax
cmp dword [ebp - 0x2b4], 0
je 0x10351765
cmp dword [ebp - 0x2b0], 0
je 0x10351765
cmp dword [ebp - 0x104], 0
jne 0x10351774
mov dword [ebp - 0x2b8], 0
jmp 0x103518ae
mov edx, dword [ebp - 0x2b4]
mov eax, dword [edx + 0x18]
mov dword [ebp - 0x100], eax
jmp 0x10351794
mov ecx, dword [ebp - 0x100]
mov edx, dword [ecx + 0x14]
mov dword [ebp - 0x100], edx
cmp dword [ebp - 0x100], 0
je 0x103518a4
mov eax, dword [ebp - 0x104]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x10]
mov dword [ebp - 0x428], edx
mov eax, dword [ebp - 0x100]
mov ecx, dword [eax]
and ecx, 0xffffff
push ecx
mov ecx, dword [ebp - 0x104]
call dword [ebp - 0x428]
mov dword [ebp - 0x108], eax
cmp dword [ebp - 0x108], 0
je 0x1035189f
mov dword [ebp - 0x10c], 0x811c9dc5
mov dword [ebp - 0x118], 0
mov edx, dword [ebp - 0x118]
add edx, 1
mov dword [ebp - 0x118], edx
mov eax, dword [ebp - 0x108]
add eax, dword [ebp - 0x118]
movsx ecx, byte [eax]
test ecx, ecx
je 0x10351818
jmp 0x103517f4
xor edx, edx
je 0x1035182b
mov eax, dword [ebp - 0x118]
add eax, 1
mov dword [ebp - 0x118], eax
mov ecx, dword [ebp - 0x118]
mov dword [ebp - 0x110], ecx
mov dword [ebp - 0x114], 0
jmp 0x10351852
mov edx, dword [ebp - 0x114]
add edx, 1
mov dword [ebp - 0x114], edx
mov eax, dword [ebp - 0x114]
cmp eax, dword [ebp - 0x110]
jae 0x10351883
mov ecx, dword [ebp - 0x108]
add ecx, dword [ebp - 0x114]
movsx edx, byte [ecx]
xor edx, dword [ebp - 0x10c]
imul eax, edx, 0x1000193
mov dword [ebp - 0x10c], eax
jmp 0x10351843
mov ecx, dword [ebp - 0x10c]
cmp ecx, dword [ebp - 0x2b0]
jne 0x1035189f
mov edx, dword [ebp - 0x100]
mov dword [ebp - 0x2b8], edx
jmp 0x103518ae
jmp 0x10351785
mov dword [ebp - 0x2b8], 0
movss xmm0, dword [0x1044fae8]
movss dword [ebp - 0x2cc], xmm0
mov eax, dword [ebp - 0x2b8]
movsx ecx, byte [eax + 0x10]
mov dword [ebp - 0x42c], ecx
mov edx, dword [ebp - 0x42c]
sub edx, 1
mov dword [ebp - 0x42c], edx
cmp dword [ebp - 0x42c], 6
ja case.0x103518f0.3
mov eax, dword [ebp - 0x42c]
jmp dword [eax*4 + 0x10352790]
mov ecx, dword [ebp - 0x2b8]
mov edx, dword [ecx + 4]
push edx
call dword [sym.imp.ucrtbased.dll_atof]
add esp, 4
fstp dword [ebp - 0x2cc]
jmp 0x10351983
mov eax, dword [ebp - 0x2b8]
mov ecx, dword [eax + 8]
push ecx
call dword [sym.imp.ucrtbased.dll__wtof]
add esp, 4
fstp dword [ebp - 0x2cc]
jmp 0x10351983
mov edx, dword [ebp - 0x2b8]
movss xmm0, dword [edx + 0xc]
movss dword [ebp - 0x2cc], xmm0
jmp 0x10351983
mov eax, dword [ebp - 0x2b8]
cvtsi2ss xmm0, dword [eax + 0xc]
movss dword [ebp - 0x2cc], xmm0
jmp 0x10351983
mov ecx, dword [ebp - 0x2b8]
mov edx, dword [ecx + 4]
mov ecx, dword [edx]
mov edx, dword [edx + 4]
call fcn.1015fa16
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x2cc], xmm0
jmp 0x10351983
xorps xmm0, xmm0
movss dword [ebp - 0x2cc], xmm0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x2a8], ecx
mov dword [ebp - 0x11c], 0xff0c53ad
mov dword [ebp - 0x2a4], 0xff0c53ad
mov edx, dword [ebp - 0x344]
mov dword [ebp - 0x2ac], edx
mov eax, dword [0x104f1694]
mov ecx, dword fs:[0x2c]
mov edx, dword [ecx + eax*4]
mov eax, dword [0x104e7288]
cmp eax, dword [edx + 0x104]
jle 0x10351a74
push 0x104e7288
call fcn.1015cfd7
add esp, 4
cmp dword [0x104e7288], 0xffffffff
jne 0x10351a74
mov dword [ebp - 4], 3
xor ecx, ecx
mov byte [ebp - 0x345], cl
xor edx, edx
mov byte [ebp - 0x346], dl
mov dword [ebp - 0x120], 0xda7d68cb
mov dword [ebp - 0x430], 0xda7d68cb
mov dword [ebp - 0x124], 0x990704d7
push 0x990704d7
lea eax, [ebp - 0x354]
push eax
call fcn.1034a5e0
add esp, 8
mov dword [ebp - 0x434], eax
mov ecx, dword [ebp - 0x430]
push ecx
mov edx, dword [ebp - 0x434]
push edx
push 0x104e7284
call fcn.103491e0
add esp, 0xc
push 0x1015d874
call fcn.1015f15b
add esp, 4
mov dword [ebp - 4], 0xffffffff
push 0x104e7288
call fcn.1015de0f
add esp, 4
cmp dword [0x104e7284], 0
je 0x10351a8a
mov eax, dword [0x104e7284]
mov dword [ebp - 0x438], eax
jmp 0x10351a94
mov dword [ebp - 0x438], 0
call dword [ebp - 0x438]
mov dword [ebp - 0x12c], eax
cmp dword [ebp - 0x2a8], 0
je 0x10351abb
cmp dword [ebp - 0x2a4], 0
je 0x10351abb
cmp dword [ebp - 0x12c], 0
jne 0x10351aca
mov dword [ebp - 0x2ac], 0
jmp 0x10351c03
mov ecx, dword [ebp - 0x2a8]
mov edx, dword [ecx + 0x18]
mov dword [ebp - 0x128], edx
jmp 0x10351aea
mov eax, dword [ebp - 0x128]
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0x128], ecx
cmp dword [ebp - 0x128], 0
je 0x10351bf9
mov edx, dword [ebp - 0x12c]
mov eax, dword [edx]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x43c], ecx
mov edx, dword [ebp - 0x128]
mov eax, dword [edx]
and eax, 0xffffff
push eax
mov ecx, dword [ebp - 0x12c]
call dword [ebp - 0x43c]
mov dword [ebp - 0x130], eax
cmp dword [ebp - 0x130], 0
je 0x10351bf4
mov dword [ebp - 0x134], 0x811c9dc5
mov dword [ebp - 0x140], 0
mov ecx, dword [ebp - 0x140]
add ecx, 1
mov dword [ebp - 0x140], ecx
mov edx, dword [ebp - 0x130]
add edx, dword [ebp - 0x140]
movsx eax, byte [edx]
test eax, eax
je 0x10351b6d
jmp 0x10351b49
xor ecx, ecx
je 0x10351b80
mov edx, dword [ebp - 0x140]
add edx, 1
mov dword [ebp - 0x140], edx
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x13c], 0
jmp 0x10351ba7
mov ecx, dword [ebp - 0x13c]
add ecx, 1
mov dword [ebp - 0x13c], ecx
mov edx, dword [ebp - 0x13c]
cmp edx, dword [ebp - 0x138]
jae 0x10351bd8
mov eax, dword [ebp - 0x130]
add eax, dword [ebp - 0x13c]
movsx ecx, byte [eax]
xor ecx, dword [ebp - 0x134]
imul edx, ecx, 0x1000193
mov dword [ebp - 0x134], edx
jmp 0x10351b98
mov eax, dword [ebp - 0x134]
cmp eax, dword [ebp - 0x2a4]
jne 0x10351bf4
mov ecx, dword [ebp - 0x128]
mov dword [ebp - 0x2ac], ecx
jmp 0x10351c03
jmp 0x10351adb
mov dword [ebp - 0x2ac], 0
movss xmm0, dword [0x1044fae8]
movss dword [ebp - 0x2d0], xmm0
mov edx, dword [ebp - 0x2ac]
movsx eax, byte [edx + 0x10]
mov dword [ebp - 0x440], eax
mov ecx, dword [ebp - 0x440]
sub ecx, 1
mov dword [ebp - 0x440], ecx
cmp dword [ebp - 0x440], 6
ja case.0x10351c45.3
mov edx, dword [ebp - 0x440]
jmp dword [edx*4 + 0x103527ac]
mov eax, dword [ebp - 0x2ac]
mov ecx, dword [eax + 4]
push ecx
call dword [sym.imp.ucrtbased.dll_atof]
add esp, 4
fstp dword [ebp - 0x2d0]
jmp 0x10351cda
mov edx, dword [ebp - 0x2ac]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.ucrtbased.dll__wtof]
add esp, 4
fstp dword [ebp - 0x2d0]
jmp 0x10351cda
mov ecx, dword [ebp - 0x2ac]
movss xmm0, dword [ecx + 0xc]
movss dword [ebp - 0x2d0], xmm0
jmp 0x10351cda
mov edx, dword [ebp - 0x2ac]
cvtsi2ss xmm0, dword [edx + 0xc]
movss dword [ebp - 0x2d0], xmm0
jmp 0x10351cda
mov eax, dword [ebp - 0x2ac]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
mov edx, dword [ecx + 4]
mov ecx, eax
call fcn.1015fa16
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x2d0], xmm0
jmp 0x10351cda
xorps xmm0, xmm0
movss dword [ebp - 0x2d0], xmm0
movss xmm0, dword [ebp - 0x2c8]
movss dword [ebp - 0x240], xmm0
movss xmm0, dword [ebp - 0x2cc]
movss dword [ebp - 0x23c], xmm0
movss xmm0, dword [ebp - 0x2d0]
movss dword [ebp - 0x238], xmm0
movss xmm0, dword [ebp - 0x240]
movss dword [ebp - 0x24], xmm0
movss xmm0, dword [ebp - 0x23c]
movss dword [ebp - 0x20], xmm0
movss xmm0, dword [ebp - 0x238]
movss dword [ebp - 0x1c], xmm0
call fcn.1015c753
mov eax, dword [eax + 0xe0]
movss xmm0, dword [eax + 0x10]
movss dword [ebp - 0x4c], xmm0
call fcn.1015d90a
mov dword [ebp - 0x408], eax
push str.visuals_impact_beams
lea ecx, [ebp - 0x260]
call fcn.1015c591
mov dword [ebp - 4], 4
lea eax, [ebp - 0x260]
push eax
mov ecx, dword [ebp - 0x408]
call fcn.1015c668
mov cl, byte [eax]
mov byte [ebp - 0x244], cl
mov dword [ebp - 4], 5
lea ecx, [ebp - 0x260]
call fcn.1015e24c
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x260]
call fcn.1015f011
mov dword [ebp - 4], 0xffffffff
movzx edx, byte [ebp - 0x244]
test edx, edx
je 0x103523b6
mov eax, dword [ebp - 0x14]
add eax, 0xf4
mov dword [ebp - 0x2e0], eax
call fcn.1015eca1
mov ecx, dword [eax]
mov dword [ebp - 0x2d4], ecx
xorps xmm0, xmm0
movss dword [ebp - 0x194], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x190], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0x18c], xmm0
lea edx, [ebp - 0x378]
mov dword [ebp - 0x19c], edx
mov eax, dword [ebp - 0x19c]
mov ecx, dword [ebp - 0x2d4]
mov dword [eax], ecx
mov edx, dword [ebp - 0x19c]
mov dword [ebp - 0x408], edx
mov eax, dword [ebp - 0x378]
mov ecx, dword [eax]
mov dword [ebp - 0x374], ecx
mov edx, 0xa8
shl edx, 2
mov eax, dword [ebp - 0x374]
mov ecx, dword [eax + edx]
mov dword [ebp - 0x370], ecx
mov edx, dword [ebp - 0x370]
mov dword [ebp - 0x40c], edx
mov eax, dword [ebp - 0x40c]
mov dword [ebp - 0x410], eax
lea ecx, [ebp - 0x194]
push ecx
mov ecx, dword [ebp - 0x2d4]
call dword [ebp - 0x410]
mov edx, dword [ebp - 0x2d4]
cmp dword [edx + 0x3ac8], 0
je 0x103522e7
mov eax, dword [ebp - 0x2d4]
mov ecx, dword [eax + 0x3914]
mov dword [ebp - 0x198], ecx
cmp dword [ebp - 0x198], 0
je 0x103522e7
cmp dword [ebp - 0x198], 0
jne 0x10351eab
jmp 0x103522e7
mov edx, dword [ebp - 0x198]
cmp dword [edx + 0x60], 0
je 0x103522e7
mov eax, dword [ebp - 0x198]
movzx ecx, byte [eax + 0x120]
test ecx, ecx
jne 0x1035200a
mov edx, dword [0x104edfdc]
sub edx, 0x38
xor edx, 0x2d2a002e
mov dword [ebp - 0x394], edx
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 0x60]
mov edx, dword [ebp - 0x394]
movss xmm0, dword [ecx + edx]
ucomiss xmm0, dword [0x1042d1cc]
lahf
test ah, 0x44
jp 0x1035200a
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 0x60]
mov dword [ebp - 0x188], ecx
call fcn.1015c753
mov edx, dword [eax + 0x88]
mov dword [ebp - 0x3e4], edx
mov eax, dword [0x104ee054]
sub eax, 0x56
xor eax, 0x2d2a004c
mov dword [ebp - 0x39c], eax
lea ecx, [ebp - 0x3b0]
mov dword [ebp - 0x17c], ecx
mov edx, dword [ebp - 0x188]
add edx, dword [ebp - 0x39c]
mov eax, dword [ebp - 0x17c]
mov ecx, dword [edx]
mov dword [eax], ecx
lea edx, [ebp - 0x3bc]
mov dword [ebp - 0x184], edx
mov eax, dword [ebp - 0x184]
mov ecx, dword [ebp - 0x3e4]
mov dword [eax], ecx
mov edx, dword [ebp - 0x184]
mov dword [ebp - 0x414], edx
mov eax, dword [ebp - 0x3bc]
mov ecx, dword [eax]
mov dword [ebp - 0x3b8], ecx
mov edx, 4
shl edx, 2
mov eax, dword [ebp - 0x3b8]
mov ecx, dword [eax + edx]
mov dword [ebp - 0x3b4], ecx
mov edx, dword [ebp - 0x3b4]
mov dword [ebp - 0x418], edx
mov eax, dword [ebp - 0x418]
mov dword [ebp - 0x41c], eax
push ecx
mov ecx, esp
mov dword [ebp - 0x3ac], esp
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x180]
mov eax, dword [ebp - 0x3b0]
mov dword [edx], eax
mov ecx, dword [ebp - 0x3e4]
call dword [ebp - 0x41c]
mov dword [ebp - 0x420], eax
mov ecx, dword [ebp - 0x420]
mov dword [ebp - 0x424], ecx
cmp dword [ebp - 0x424], 0
jne 0x103522e7
mov dword [ebp - 0x148], 8
cmp dword [ebp - 0x148], 0xffffffff
je 0x103522e7
mov edx, dword [0x104ee048]
sub edx, 0x53
xor edx, 0x2d2a0049
mov dword [ebp - 0x3a4], edx
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 0x60]
mov edx, dword [ebp - 0x3a4]
cmp dword [ecx + edx], 0
je 0x103522e7
mov eax, dword [0x104ee048]
sub eax, 0x53
xor eax, 0x2d2a0049
mov dword [ebp - 0x3c0], eax
mov ecx, dword [ebp - 0x198]
mov edx, dword [ecx + 0x60]
mov eax, 0x30
shl eax, 3
mov ecx, dword [ebp - 0x3c0]
add eax, dword [edx + ecx]
mov dword [ebp - 0x37c], eax
mov edx, 4
imul eax, edx, 3
mov ecx, 2
shl ecx, 4
add ecx, dword [ebp - 0x37c]
movss xmm0, dword [ecx + eax]
movss dword [ebp - 0x390], xmm0
mov edx, dword [0x104ee048]
sub edx, 0x53
xor edx, 0x2d2a0049
mov dword [ebp - 0x3a8], edx
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 0x60]
mov edx, 0x30
shl edx, 3
mov eax, dword [ebp - 0x3a8]
add edx, dword [ecx + eax]
mov dword [ebp - 0x380], edx
mov ecx, 4
imul edx, ecx, 3
mov eax, 1
shl eax, 4
add eax, dword [ebp - 0x380]
movss xmm0, dword [eax + edx]
movss dword [ebp - 0x38c], xmm0
mov ecx, dword [0x104ee048]
sub ecx, 0x53
xor ecx, 0x2d2a0049
mov dword [ebp - 0x3c8], ecx
mov edx, 0x30
shl edx, 3
mov eax, dword [ebp - 0x198]
mov ecx, dword [eax + 0x60]
mov eax, dword [ebp - 0x3c8]
add edx, dword [ecx + eax]
mov dword [ebp - 0x384], edx
mov ecx, 4
imul edx, ecx, 3
xor eax, eax
shl eax, 4
add eax, dword [ebp - 0x384]
movss xmm0, dword [eax + edx]
movss dword [ebp - 0x388], xmm0
movss xmm0, dword [ebp - 0x388]
movss dword [ebp - 0x154], xmm0
movss xmm0, dword [ebp - 0x38c]
movss dword [ebp - 0x150], xmm0
movss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x14c], xmm0
mov ecx, dword [ebp - 0x154]
mov dword [ebp - 0x160], ecx
mov edx, dword [ebp - 0x150]
mov dword [ebp - 0x15c], edx
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x158], eax
cvtss2sd xmm0, dword [ebp - 0x158]
addsd xmm0, qword [str.333333]
movsd qword [ebp - 0x168], xmm0
movss xmm0, dword [ebp - 0x18c]
movss dword [ebp - 0x16c], xmm0
cvtss2sd xmm0, dword [ebp - 0x16c]
comisd xmm0, xmmword [ebp - 0x168]
jbe 0x103522e7
xorps xmm0, xmm0
movss dword [ebp - 0x170], xmm0
cvtss2sd xmm0, dword [ebp - 0x18c]
subsd xmm0, qword [ebp - 0x168]
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x174], xmm0
movss xmm0, dword [ebp - 0x174]
subss xmm0, dword [0x10430afc]
cvtss2sd xmm0, xmm0
mulsd xmm0, qword [0x10430ab0]
cvtsd2ss xmm0, xmm0
movss dword [ebp - 0x178], xmm0
movss xmm0, dword [ebp - 0x178]
comiss xmm0, dword [0x1042d1cc]
jb 0x1035226f
push ecx
movss xmm0, dword [0x1042d1f8]
movss dword [esp], xmm0
push ecx
movss xmm0, dword [ebp - 0x178]
movss dword [esp], xmm0
call dword [sym.imp.ucrtbased.dll_fminf]
add esp, 8
fstp dword [ebp - 0x170]
cvtss2sd xmm0, dword [ebp - 0x18c]
movsd xmm1, qword [ebp - 0x168]
subsd xmm1, xmm0
movss xmm0, dword [ebp - 0x170]
mulss xmm0, dword [ebp - 0x170]
cvtss2sd xmm0, xmm0
mulsd xmm0, qword [0x10430ae0]
movss xmm2, dword [ebp - 0x170]
mulss xmm2, dword [ebp - 0x170]
cvtss2sd xmm2, xmm2
mulsd xmm2, qword [0x10430ad0]
cvtss2sd xmm3, dword [ebp - 0x170]
mulsd xmm2, xmm3
subsd xmm0, xmm2
mulsd xmm1, xmm0
cvtss2sd xmm0, dword [ebp - 0x18c]
addsd xmm1, xmm0
cvtsd2ss xmm0, xmm1
movss dword [ebp - 0x18c], xmm0
mov ecx, dword [ebp - 0x194]
mov dword [ebp - 0x28c], ecx
mov edx, dword [ebp - 0x190]
mov dword [ebp - 0x288], edx
mov eax, dword [ebp - 0x18c]
mov dword [ebp - 0x284], eax
lea ecx, [ebp - 0x28c]
mov dword [ebp - 0x2d8], ecx
call fcn.1015eca1
mov edx, dword [eax]
mov dword [ebp - 0x1a4], edx
mov eax, dword [0x104edfd4]
sub eax, 0x36
xor eax, 0x2d2a002c
mov dword [ebp - 0x35c], eax
mov ecx, dword [ebp - 0x1a4]
add ecx, dword [ebp - 0x35c]
mov edx, dword [ecx]
mov dword [ebp - 0x2dc], edx
lea eax, [ebp - 0x280]
mov ecx, dword [ebp - 0x24]
mov dword [eax], ecx
mov edx, dword [ebp - 0x20]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x1c]
mov dword [eax + 8], ecx
lea edx, [ebp - 0x274]
mov eax, dword [ebp - 0x2d8]
mov ecx, dword [eax]
mov dword [edx], ecx
mov ecx, dword [eax + 4]
mov dword [edx + 4], ecx
mov eax, dword [eax + 8]
mov dword [edx + 8], eax
mov ecx, dword [ebp - 0x2dc]
mov dword [ebp - 0x268], ecx
mov byte [ebp - 0x264], 0
mov byte [ebp - 0x263], 0
lea edx, [ebp - 0x280]
mov dword [ebp - 0x3cc], edx
mov eax, dword [ebp - 0x3cc]
push eax
mov ecx, dword [ebp - 0x2e0]
call fcn.1015f5e3
mov eax, dword [ebp - 0x14]
add eax, 0xe0
mov dword [ebp - 0x3c4], eax
mov ecx, dword [ebp - 0x3c4]
mov dword [ebp - 0x358], ecx
mov edx, dword [ebp - 0x358]
add edx, 0x10
mov dword [ebp - 0x36c], edx
mov eax, dword [ebp - 0x36c]
cmp dword [eax], 0
jne 0x103523f6
mov dword [ebp - 0x408], 1
jmp 0x10352400
mov dword [ebp - 0x408], 0
mov cl, byte [ebp - 0x408]
mov byte [ebp - 0x361], cl
movzx edx, byte [ebp - 0x361]
test edx, edx
je 0x1035241c
jmp 0x10352737
movss xmm0, dword [0x1042d214]
movss dword [ebp - 0x54], xmm0
mov dword [ebp - 0x50], 0
mov eax, dword [ebp - 0x14]
add eax, 0xe0
mov dword [ebp - 0x58], eax
xor eax, eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x58]
mov dword [ebp - 0x3d4], ecx
mov edx, dword [ebp - 0x3d4]
mov dword [ebp - 0x3d0], edx
mov eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x3ec], eax
mov ecx, dword [ebp - 0x3d0]
mov dword [ebp - 0x3ec], ecx
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x3f0], edx
mov eax, dword [ebp - 0x3f0]
mov dword [ebp - 0x3e0], eax
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc
mov dword [ebp - 0x3dc], ecx
mov edx, dword [ebp - 0x3dc]
mov eax, dword [edx]
mov dword [ebp - 0x3e8], eax
mov ecx, dword [ebp - 0x3ec]
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x3e8]
mov dword [ebp - 0x5c], edx
xor eax, eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], eax
lea ecx, [ebp - 0x68]
push ecx
mov ecx, dword [ebp - 0x58]
call fcn.1015d207
jmp 0x103524d3
mov eax, dword [ebp - 0x5c]
add eax, 1
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x5c]
cmp eax, dword [ebp - 0x64]
jne 0x103524e7
mov dword [ebp - 0x408], 1
jmp 0x103524f1
mov dword [ebp - 0x408], 0
movzx ecx, byte [ebp - 0x408]
test ecx, ecx
jne 0x10352508
mov dword [ebp - 0x40c], 1
jmp 0x10352512
mov dword [ebp - 0x40c], 0
movzx edx, byte [ebp - 0x40c]
test edx, edx
je 0x103525ae
lea ecx, [ebp - 0x60]
call fcn.1015e076
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x6c]
movzx ecx, byte [eax + 0x30]
test ecx, ecx
je 0x10352539
jmp 0x103524ca
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0x6c]
movss xmm0, dword [eax + 8]
addss xmm0, dword [ecx + 0xc]
movss dword [ebp - 0x70], xmm0
movss xmm0, dword [ebp - 0x4c]
subss xmm0, dword [ebp - 0x70]
cvtss2sd xmm0, xmm0
sub esp, 8
movsd qword [esp], xmm0
call fcn.1015da40
add esp, 8
fstp dword [ebp - 0x408]
fld dword [ebp - 0x408]
fstp dword [ebp - 0x74]
movss xmm0, dword [ebp - 0x74]
comiss xmm0, dword [0x1042d1f8]
jbe 0x1035258e
jmp 0x103524ca
movss xmm0, dword [ebp - 0x54]
comiss xmm0, dword [ebp - 0x74]
jbe 0x103525a9
movss xmm0, dword [ebp - 0x74]
movss dword [ebp - 0x54], xmm0
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x50], eax
jmp 0x103524ca
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 0
jne 0x103525bf
jmp 0x10352737
mov eax, dword [ebp - 0x78]
mov byte [eax + 0x30], 1
mov eax, dword [ebp - 0x78]
add eax, 0x20
mov dword [ebp - 0x1a8], eax
mov ecx, dword [ebp - 0x1a8]
movss xmm0, dword [ebp - 0x24]
movss dword [ecx], xmm0
mov edx, dword [ebp - 0x1a8]
movss xmm0, dword [ebp - 0x20]
movss dword [edx + 4], xmm0
mov eax, dword [ebp - 0x1a8]
movss xmm0, dword [ebp - 0x1c]
movss dword [eax + 8], xmm0
xor eax, eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x88], 0
lea ecx, [ebp - 0x84]
mov dword [ebp - 0x1ac], ecx
mov edx, dword [ebp - 0x1ac]
xorps xmm0, xmm0
movss dword [edx], xmm0
mov eax, dword [ebp - 0x1ac]
xorps xmm0, xmm0
movss dword [eax + 4], xmm0
mov ecx, dword [ebp - 0x1ac]
xorps xmm0, xmm0
movss dword [ecx + 8], xmm0
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x8c], eax
call fcn.1015eca1
mov eax, dword [eax]
mov dword [ebp - 0x1b0], eax
mov ecx, dword [0x104edfd4]
sub ecx, 0x36
xor ecx, 0x2d2a002c
mov dword [ebp - 0x3f4], ecx
mov edx, dword [ebp - 0x1b0]
add edx, dword [ebp - 0x3f4]
mov eax, dword [edx]
mov dword [ebp - 0x88], eax
movss xmm0, dword [ebp - 0x24]
movss dword [ebp - 0x84], xmm0
movss xmm0, dword [ebp - 0x20]
movss dword [ebp - 0x80], xmm0
movss xmm0, dword [ebp - 0x1c]
movss dword [ebp - 0x7c], xmm0
mov eax, dword [ebp - 0x14]
add eax, 0x104
mov dword [ebp - 0x408], eax
lea ecx, [ebp - 0x8c]
push ecx
mov ecx, dword [ebp - 0x408]
call fcn.1015cd89
mov eax, dword [ebp - 0x14]
add eax, 0x104
mov dword [ebp - 0x3f8], eax
mov ecx, dword [ebp - 0x3f8]
mov dword [ebp - 0x3fc], ecx
mov edx, dword [ebp - 0x3fc]
add edx, 0x10
mov dword [ebp - 0x404], edx
mov eax, dword [ebp - 0x404]
mov ecx, dword [eax]
mov dword [ebp - 0x400], ecx
cmp dword [ebp - 0x400], 0x80
jbe 0x10352737
mov ecx, dword [ebp - 0x14]
add ecx, 0x104
call fcn.1015eb02
jmp 0x103526e4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1015ebf2
mov esp, ebp
pop ebp
ret 4