Function at 0x1010c410
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10197103
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x308
mov eax, dword [0x102a67c0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x28c], edi
mov dword [ebp - 0x2ac], 0
mov eax, dword [0x102a7958]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
cmp dword [eax + 0x154], 0
je 0x1010eafe
cmp dword [eax + 0x158], 0
je 0x1010eafe
mov eax, dword [eax + 0xc4]
cmp dword [eax + 0x174], 0xffffffff
je 0x1010eafe
call fcn.10103e40
mov eax, dword [0x10bf3c48]
add eax, 0x23679c21
xor eax, 0x43db7564
cmp byte [eax + 0x38], 0
je 0x1010c4c3
cmp byte [eax + 0x39], 0
jne 0x1010eafe
mov eax, dword [edi + 0x18]
lea ecx, [edi + 0x18]
cmp eax, dword [ecx + 4]
je 0x1010c4d1
mov dword [ecx + 4], eax
mov eax, dword [ecx + 8]
sub eax, dword [ecx]
sar eax, 2
mov dword [ebp - 0x26c], 0x13
cmp eax, 0x13
jae 0x1010c4f4
lea eax, [ebp - 0x26c]
push eax
call fcn.100fec30
lea eax, [ebp - 0x90]
push eax
call fcn.100eb720
add esp, 4
mov ecx, edi
movups xmm0, xmmword [eax]
movups xmm1, xmmword [eax + 0x10]
movups xmm2, xmmword [eax + 0x20]
movups xmm3, xmmword [eax + 0x30]
movups xmm4, xmmword [eax + 0x40]
movups xmmword [edi + 0x65700], xmm0
movups xmmword [edi + 0x65710], xmm1
movups xmmword [edi + 0x65720], xmm2
movups xmmword [edi + 0x65730], xmm3
movups xmmword [edi + 0x65740], xmm4
call fcn.1010f930
mov word [edi + 0x63d68], 0
lea eax, [edi + 0x63ec0]
mov word [edi], 1
mov byte [edi + 0x63d6a], 0
mov dword [edi + 4], 0
push 0x1800
push 0
push eax
mov dword [edi + 0x2c], 0
mov dword [edi + 0x28], 0
mov dword [edi + 0x24], 0
mov word [edi + 0x63e70], 0
mov dword [edi + 0x63e74], 0
mov dword [edi + 0x63e78], 0
mov dword [edi + 0x63e88], 0
mov dword [edi + 0x63e84], 0
mov dword [edi + 0x63e80], 0
mov dword [edi + 0x63e94], 0
mov dword [edi + 0x63e90], 0
mov dword [edi + 0x63e8c], 0
mov dword [edi + 0x63eac], 0
mov dword [edi + 0x63ea8], 0
mov dword [edi + 0x63ea4], 0
mov dword [edi + 0x63eb8], 0
mov dword [edi + 0x63eb4], 0
mov dword [edi + 0x63eb0], 0
call sub.VCRUNTIME140.dll_memset
mov dword [edi + 0x656c0], 0
add esp, 0xc
mov dword [edi + 0x656c4], 0
mov dword [edi + 0x656c8], 0
mov dword [edi + 0x656cc], 0
mov dword [edi + 0x656d0], 0
mov dword [edi + 0x656d4], 0
mov dword [edi + 0x656d8], 0
mov dword [edi + 0x656dc], 0
mov dword [edi + 0x656e8], 0
mov dword [edi + 0x656e4], 0
mov dword [edi + 0x656e0], 0
mov eax, dword [edi + 0x656ec]
cmp eax, dword [edi + 0x656f0]
je 0x1010c69e
mov dword [edi + 0x656f0], eax
cmp byte [0x10c01630], 0
je 0x1010e9ba
mov eax, dword [0x102a7958]
lea ecx, [eax - 0x543a05ee]
xor ecx, 0x5b1c6e88
mov esi, dword [ecx + 0x154]
mov ecx, dword [0x102a7da0]
test cl, 1
jne 0x1010c705
or ecx, 1
mov dword [0x102a7da0], ecx
push 0xa2ccb41a
push 0xcd2ed041
mov dword [ebp - 4], 0
call fcn.100f1390
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x102a7958]
add esp, 8
mov dword [0x102a7d9c], ecx
jmp 0x1010c70b
mov ecx, dword [0x102a7d9c]
movzx esi, word [esi + ecx]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
mov ecx, dword [eax + 0x110]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x1010c889
mov eax, dword [eax + 0xc8]
cmp si, 0x1f
je 0x1010c754
test eax, eax
je 0x1010c754
cmp eax, 7
jl 0x1010c889
cmp eax, 0x10
jg 0x1010c889
mov eax, dword [0x102a7958]
lea ecx, [eax - 0x543a05ee]
xor ecx, 0x5b1c6e88
mov esi, dword [ecx + 0x154]
mov ecx, dword [0x102a7da0]
test cl, 1
jne 0x1010c7ae
or ecx, 1
mov dword [0x102a7da0], ecx
push 0xa2ccb41a
push 0xcd2ed041
mov dword [ebp - 4], 1
call fcn.100f1390
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x102a7958]
add esp, 8
mov dword [0x102a7d9c], ecx
jmp 0x1010c7b4
mov ecx, dword [0x102a7d9c]
movzx ecx, word [esi + ecx]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
mov edx, ecx
mov esi, ecx
mov dword [ebp - 0x26c], edx
mov ecx, dword [eax + 0x110]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x1010c7eb
cmp si, 0x1f
je 0x1010c889
mov eax, dword [0x102a7958]
lea ecx, [eax - 0x543a05ee]
xor ecx, 0x5b1c6e88
mov esi, dword [ecx + 0x154]
mov ecx, dword [0x102a7da0]
test cl, 1
jne 0x1010c845
or ecx, 1
mov dword [0x102a7da0], ecx
push 0xa2ccb41a
push 0xcd2ed041
mov dword [ebp - 4], 2
call fcn.100f1390
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x102a7958]
add esp, 8
mov dword [0x102a7d9c], ecx
jmp 0x1010c84b
mov ecx, dword [0x102a7d9c]
movzx esi, word [esi + ecx]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
mov ecx, dword [eax + 0x110]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x1010e9ba
cmp dword [eax + 0xc8], 0
jne 0x1010e9ba
cmp si, 0x1f
je 0x1010e9ba
mov eax, dword [0x102a7958]
lea ecx, [eax - 0x543a05ee]
xor ecx, 0x5b1c6e88
mov esi, dword [ecx + 0x154]
mov ecx, dword [0x102a7da0]
test cl, 1
jne 0x1010c8e3
or ecx, 1
mov dword [0x102a7da0], ecx
push 0xa2ccb41a
push 0xcd2ed041
mov dword [ebp - 4], 3
call fcn.100f1390
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x102a7958]
add esp, 8
mov dword [0x102a7d9c], ecx
jmp 0x1010c8e9
mov ecx, dword [0x102a7d9c]
movzx esi, word [esi + ecx]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
mov ecx, dword [eax + 0x110]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x1010c927
cmp dword [eax + 0xc8], 0
jne 0x1010c927
cmp si, 0x1f
je 0x1010c927
mov ecx, edi
call fcn.101092b0
jmp 0x1010eafe
mov ecx, edi
call fcn.1010fbe0
mov eax, dword [0x106b50b8]
lea esi, [ebp - 0x318]
add eax, 0x57890850
mov dword [ebp - 0x318], 0x101ac080
xor eax, 0x9c627e67
mov dword [ebp - 0x314], edi
mov dword [ebp - 0x2f4], esi
mov edx, dword [eax + 8]
mov ecx, dword [eax + 4]
mov eax, ecx
mov dword [ebp - 4], 4
mov dword [ebp - 0x278], ecx
mov dword [ebp - 0x274], edx
cmp eax, edx
jne 0x1010c98d
push 0
mov ecx, esi
mov dword [ebp - 4], 0xffffffff
call fcn.10016420
jmp 0x1010caff
mov edx, dword [0x102a7d38]
mov ecx, dword [ebp - 0x274]
nop dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x27c], eax
test eax, eax
je 0x1010cac8
mov ecx, dword [0x102a7958]
add ecx, 0xabc5fa12
xor ecx, 0x5b1c6e88
mov eax, dword [ecx + 0x150]
mov dword [ebp - 0x26c], eax
cmp dword [ebp - 0x27c], eax
je 0x1010cac2
test eax, eax
je 0x1010ca94
mov ecx, dword [ecx + 0x1a0]
mov eax, dword [ecx + 0x1c]
cmp dword [eax + 0x30], ecx
jne 0x1010ca94
test dl, 1
jne 0x1010ca30
or edx, 1
mov dword [0x102a7d38], edx
push 0xa5bfefb3
push 0x1eee87cc
mov byte [ebp - 4], 5
call fcn.100f1390
mov edx, dword [0x102a7d38]
add esp, 8
mov esi, dword [ebp - 0x2f4]
mov dword [0x102a7d34], eax
mov byte [ebp - 4], 4
jmp 0x1010ca35
mov eax, dword [0x102a7d34]
mov ecx, dword [ebp - 0x27c]
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x268], ecx
test dl, 1
jne 0x1010ca7d
or edx, 1
mov dword [0x102a7d38], edx
push 0xa5bfefb3
push 0x1eee87cc
mov byte [ebp - 4], 6
call fcn.100f1390
mov edx, dword [0x102a7d38]
add esp, 8
mov esi, dword [ebp - 0x2f4]
mov dword [0x102a7d34], eax
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x26c]
mov edi, dword [ebp - 0x268]
cmp edi, dword [ecx + eax]
mov edi, dword [ebp - 0x28c]
je 0x1010cac2
mov edx, dword [ebp - 0x27c]
mov dword [ebp - 0x268], edx
test esi, esi
je 0x1010eb1c
mov eax, dword [esi]
lea ecx, [ebp - 0x268]
push ecx
mov ecx, esi
call dword [eax + 8]
mov edx, dword [0x102a7d38]
mov esi, dword [ebp - 0x2f4]
mov ecx, dword [ebp - 0x274]
mov eax, dword [ebp - 0x278]
add eax, 0xc
mov dword [ebp - 0x278], eax
cmp eax, ecx
jne 0x1010c9a0
mov dword [ebp - 4], 0xffffffff
test esi, esi
je 0x1010caff
mov eax, dword [esi]
mov ecx, esi
mov edx, dword [eax + 0x10]
lea eax, [ebp - 0x318]
cmp esi, eax
setne al
push eax
call edx
cmp dword [edi + 4], 1
jge 0x1010cc42
cmp byte [edi + 1], 0
je 0x1010eafe
lea esi, [edi + 0x30]
lea eax, [esi + 0x63c90]
mov dword [ebp - 0x268], eax
cmp esi, eax
je 0x1010eaf3
add esi, 0x20
mov edi, eax
nop
push 0x1800
lea eax, [esi + 0x30]
mov word [esi - 0x20], 0
push 0
push eax
mov dword [esi - 0x1c], 0
mov dword [esi - 0x18], 0
mov dword [esi - 8], 0
mov dword [esi - 0xc], 0
mov dword [esi - 0x10], 0
mov dword [esi + 4], 0
mov dword [esi], 0
mov dword [esi - 4], 0
mov dword [esi + 0x1c], 0
mov dword [esi + 0x18], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0x28], 0
mov dword [esi + 0x24], 0
mov dword [esi + 0x20], 0
call sub.VCRUNTIME140.dll_memset
mov dword [esi + 0x1830], 0
add esp, 0xc
mov dword [esi + 0x1834], 0
mov dword [esi + 0x1838], 0
mov dword [esi + 0x183c], 0
mov dword [esi + 0x1840], 0
mov dword [esi + 0x1844], 0
mov dword [esi + 0x1848], 0
mov dword [esi + 0x184c], 0
mov dword [esi + 0x1858], 0
mov dword [esi + 0x1854], 0
mov dword [esi + 0x1850], 0
mov eax, dword [esi + 0x185c]
cmp eax, dword [esi + 0x1860]
je 0x1010cc2c
mov dword [esi + 0x1860], eax
add esi, 0x1890
lea eax, [esi - 0x20]
cmp eax, edi
jne 0x1010cb30
jmp 0x1010eaed
mov ecx, edi
mov byte [edi + 1], 1
call fcn.1010ed40
mov ecx, edi
call fcn.10105790
mov word [edi + 0x63d69], 0
lea eax, [edi + 0x63ec0]
push 0x1800
push 0
push eax
mov dword [ebp - 0x2c4], 0x7f7fffff
mov word [edi + 0x63e70], 0
mov dword [edi + 0x63e74], 0
mov dword [edi + 0x63e78], 0
mov dword [edi + 0x63e88], 0
mov dword [edi + 0x63e84], 0
mov dword [edi + 0x63e80], 0
mov dword [edi + 0x63e94], 0
mov dword [edi + 0x63e90], 0
mov dword [edi + 0x63e8c], 0
mov dword [edi + 0x63eac], 0
mov dword [edi + 0x63ea8], 0
mov dword [edi + 0x63ea4], 0
mov dword [edi + 0x63eb8], 0
mov dword [edi + 0x63eb4], 0
mov dword [edi + 0x63eb0], 0
call sub.VCRUNTIME140.dll_memset
mov dword [edi + 0x656c0], 0
add esp, 0xc
mov dword [edi + 0x656c4], 0
mov dword [edi + 0x656c8], 0
mov dword [edi + 0x656cc], 0
mov dword [edi + 0x656d0], 0
mov dword [edi + 0x656d4], 0
mov dword [edi + 0x656d8], 0
mov dword [edi + 0x656dc], 0
mov dword [edi + 0x656e8], 0
mov dword [edi + 0x656e4], 0
mov dword [edi + 0x656e0], 0
mov eax, dword [edi + 0x656ec]
cmp eax, dword [edi + 0x656f0]
je 0x1010cd94
mov dword [edi + 0x656f0], eax
mov eax, dword [0x106b50b8]
lea ecx, [ebp - 0x2c4]
add eax, 0x57890850
mov dword [ebp - 0x2f0], 0x101ac0f8
lea esi, [ebp - 0x2f0]
mov dword [ebp - 0x2ec], edi
xor eax, 0x9c627e67
mov dword [ebp - 0x2e8], ecx
mov dword [ebp - 0x2cc], esi
mov edx, dword [eax + 8]
mov ecx, dword [eax + 4]
mov eax, ecx
mov dword [ebp - 4], 7
mov dword [ebp - 0x27c], ecx
mov dword [ebp - 0x274], edx
cmp eax, edx
jne 0x1010cdff
push 0
mov ecx, esi
mov dword [ebp - 4], 0xffffffff
call fcn.10016470
jmp 0x1010cf6f
mov edx, dword [0x102a7d38]
mov ecx, dword [ebp - 0x274]
nop dword [eax + eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x278], eax
test eax, eax
je 0x1010cf38
mov ecx, dword [0x102a7958]
add ecx, 0xabc5fa12
xor ecx, 0x5b1c6e88
mov eax, dword [ecx + 0x150]
mov dword [ebp - 0x268], eax
cmp dword [ebp - 0x278], eax
je 0x1010cf32
test eax, eax
je 0x1010cf04
mov ecx, dword [ecx + 0x1a0]
mov eax, dword [ecx + 0x1c]
cmp dword [eax + 0x30], ecx
jne 0x1010cf04
test dl, 1
jne 0x1010cea0
or edx, 1
mov dword [0x102a7d38], edx
push 0xa5bfefb3
push 0x1eee87cc
mov byte [ebp - 4], 8
call fcn.100f1390
mov edx, dword [0x102a7d38]
add esp, 8
mov esi, dword [ebp - 0x2cc]
mov dword [0x102a7d34], eax
mov byte [ebp - 4], 7
jmp 0x1010cea5
mov eax, dword [0x102a7d34]
mov ecx, dword [ebp - 0x278]
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x26c], ecx
test dl, 1
jne 0x1010ceed
or edx, 1
mov dword [0x102a7d38], edx
push 0xa5bfefb3
push 0x1eee87cc
mov byte [ebp - 4], 9
call fcn.100f1390
mov edx, dword [0x102a7d38]
add esp, 8
mov esi, dword [ebp - 0x2cc]
mov dword [0x102a7d34], eax
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x268]
mov edi, dword [ebp - 0x26c]
cmp edi, dword [ecx + eax]
mov edi, dword [ebp - 0x28c]
je 0x1010cf32
mov edx, dword [ebp - 0x278]
mov dword [ebp - 0x268], edx
test esi, esi
je 0x1010eb1c
mov eax, dword [esi]
lea ecx, [ebp - 0x268]
push ecx
mov ecx, esi
call dword [eax + 8]
mov edx, dword [0x102a7d38]
mov esi, dword [ebp - 0x2cc]
mov ecx, dword [ebp - 0x274]
mov eax, dword [ebp - 0x27c]
add eax, 0xc
mov dword [ebp - 0x27c], eax
cmp eax, ecx
jne 0x1010ce10
mov dword [ebp - 4], 0xffffffff
test esi, esi
je 0x1010cf6f
mov eax, dword [esi]
mov ecx, esi
mov edx, dword [eax + 0x10]
lea eax, [ebp - 0x2f0]
cmp esi, eax
setne al
push eax
call edx
mov eax, dword [edi + 0x63e78]
lea esi, [edi + 0x656c8]
mov dword [ebp - 0x270], esi
mov dword [ebp - 0x278], eax
test eax, eax
je 0x1010e884
cmp byte [esi], 0
je 0x1010e884
cmp byte [edi + 0x63e71], 0
je 0x1010e884
mov byte [edi + 0x63d6a], 1
mov eax, dword [0x106b50b0]
add eax, 0x1f181504
xor eax, 0xe99fe030
cmp byte [0x10c05208], 0
mov dword [ebp - 0x268], eax
je 0x1010cfd2
mov eax, dword [edi + 0x6570c]
jmp 0x1010cfd8
mov eax, dword [edi + 0x65708]
mov dword [ebp - 0x274], eax
mov eax, dword [0x102a7d30]
test al, 1
jne 0x1010d01e
or eax, 1
mov dword [0x102a7d30], eax
push 0x84cdad2
push 0x72e242a1
mov dword [ebp - 4], 0xa
call fcn.100f1390
mov edx, eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x102a7d30]
add esp, 8
mov dword [0x102a7d2c], edx
jmp 0x1010d024
mov edx, dword [0x102a7d2c]
mov ecx, dword [ebp - 0x278]
mov edi, dword [ecx + edx]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x27c], edi
cmp ecx, 0x63
jle 0x1010d045
add ecx, 0xffffff9c
add ecx, edi
jmp 0x1010d08f
test al, 1
jne 0x1010d07f
or eax, 1
mov dword [0x102a7d30], eax
push 0x84cdad2
push 0x72e242a1
mov dword [ebp - 4], 0xb
call fcn.100f1390
mov ecx, dword [ebp - 0x274]
mov edx, eax
add esp, 8
mov dword [0x102a7d2c], edx
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x278]
cmp ecx, dword [eax + edx]
cmovg ecx, dword [ebp - 0x27c]
cmp byte [esi + 3], 0
mov edi, dword [ebp - 0x28c]
mov dword [ebp - 0x274], ecx
mov byte [ebp - 0x27d], 0
je 0x1010d0e0
cmp dword [esi + 8], ecx
jl 0x1010d0e0
test byte [edi + 0x65734], 1
je 0x1010d0e0
mov ecx, edi
call fcn.10106900
cmp byte [edi + 0x65701], 0
je 0x1010d0e0
push esi
mov ecx, edi
call fcn.1010f0b0
test al, al
je 0x1010d0e0
mov byte [ebp - 0x27d], 1
mov byte [edi + 0x63d68], 1
lea eax, [esi + 0x18]
push eax
mov eax, dword [ebp - 0x268]
add eax, 0x3f9fc8
push eax
lea eax, [ebp - 0x2a0]
push eax
call fcn.100ec950
add esp, 0xc
fld dword [eax]
fld dword [0x101a0e50]
call sub.api_ms_win_crt_math_l1_1_0.dll__CIfmod
movss xmm1, dword [0x101a0e50]
fstp dword [ebp - 0x268]
movss xmm0, dword [ebp - 0x268]
comiss xmm0, dword [0x101a0e48]
jbe 0x1010d12f
subss xmm0, xmm1
movss xmm2, dword [0x101a0e58]
comiss xmm2, xmm0
jbe 0x1010d140
addss xmm0, xmm1
mov ecx, dword [0x106b50b0]
lea eax, [ebp - 0x2c0]
add ecx, 0x1f181504
xor ecx, 0xe99fe030
push ecx
movss dword [esp], xmm0
push eax
call fcn.100177c0
mov eax, dword [edi + 0x656c4]
mov esi, dword [edi + 0x63e78]
mov dword [ebp - 0x27c], eax
mov eax, dword [0x102a7c48]
test al, 1
jne 0x1010d1ae
or eax, 1
mov dword [0x102a7c48], eax
push 0x559d81af
push 0x1eee87cc
mov dword [ebp - 4], 0xc
call fcn.100f1390
add esp, 8
mov dword [0x102a7c44], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1010d1b3
mov eax, dword [0x102a7c44]
movq xmm0, qword [esi + eax]
mov ecx, esi
movq qword [edi + 0x63e80], xmm0
mov eax, dword [esi + eax + 8]
mov dword [edi + 0x63e88], eax
mov eax, dword [esi]
mov eax, dword [eax + 0x28]
call eax
movq xmm0, qword [eax]
movq qword [edi + 0x63e8c], xmm0
mov eax, dword [eax + 8]
mov dword [edi + 0x63e94], eax
mov eax, dword [0x102a7cd0]
test al, 1
jne 0x1010d220
or eax, 1
mov dword [0x102a7cd0], eax
push 0xf3c2c786
push 0x72e242a1
mov dword [ebp - 4], 0xd
call fcn.100f1390
add esp, 8
mov dword [0x102a7ccc], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1010d225
mov eax, dword [0x102a7ccc]
movq xmm0, qword [esi + eax]
movq qword [edi + 0x63e98], xmm0
mov eax, dword [esi + eax + 8]
mov dword [edi + 0x63ea0], eax
mov eax, dword [0x102a7c50]
test al, 1
jne 0x1010d274
or eax, 1
mov dword [0x102a7c50], eax
push 0xe57f80c
push 0x1eee87cc
mov dword [ebp - 4], 0xe
call fcn.100f1390
add esp, 8
mov dword [0x102a7c4c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1010d279
mov eax, dword [0x102a7c4c]
movq xmm0, qword [esi + eax]
movq qword [edi + 0x63ea4], xmm0
mov eax, dword [esi + eax + 8]
mov dword [edi + 0x63eac], eax
mov eax, dword [0x102a7c58]
test al, 1
jne 0x1010d2c8
or eax, 1
mov dword [0x102a7c58], eax
push 0x7d388d3e
push 0x1eee87cc
mov dword [ebp - 4], 0xf
call fcn.100f1390
add esp, 8
mov dword [0x102a7c54], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1010d2cd
mov eax, dword [0x102a7c54]
movq xmm0, qword [esi + eax]
movq qword [edi + 0x63eb0], xmm0
mov eax, dword [esi + eax + 8]
mov dword [edi + 0x63eb8], eax
add edi, 0x63ec0
mov eax, dword [esi + 0x2920]
mov esi, dword [esi + 0x2914]
lea ecx, [eax + eax*2]
mov eax, dword [ebp - 0x27c]
shl ecx, 4
rep movsb byte es:[edi], byte [esi]
cmp byte [eax + 0xc], 0
je 0x1010d311
add eax, 0xdf00
jmp 0x1010d316
add eax, 0xaee0
mov edi, dword [ebp - 0x28c]
mov esi, dword [0x106b50b0]
mov dword [ebp - 0x278], eax
add esi, 0x1f181504
xor esi, 0xe99fe030
mov ecx, dword [edi + 0x63e78]
mov dword [ebp - 0x26c], ecx
add ecx, 8
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
imul eax, eax, 0x394
add eax, esi
je 0x1010d604
mov eax, dword [ebp - 0x27c]
cmp byte [eax + 0xc], 0
je 0x1010d36b
add eax, 0xdee0
jmp 0x1010d370
add eax, 0x84
movss xmm0, dword [eax + 8]
movss xmm2, dword [eax]
movss xmm1, dword [eax + 4]
movss dword [ebp - 0x298], xmm0
mov eax, dword [ebp - 0x298]
unpcklps xmm2, xmm1
mov dword [ebp - 0x268], eax
mov eax, dword [0x102a7c48]
movaps xmmword [ebp - 0x40], xmm2
movq qword [ebp - 0x2a0], xmm2
test al, 1
jne 0x1010d3dd
or eax, 1
mov dword [0x102a7c48], eax
push 0x559d81af
push 0x1eee87cc
mov dword [ebp - 4], 0x10
call fcn.100f1390
movaps xmm2, xmmword [ebp - 0x40]
add esp, 8
mov dword [0x102a7c44], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1010d3e2
mov eax, dword [0x102a7c44]
mov esi, dword [ebp - 0x26c]
mov ecx, dword [ebp - 0x268]
movq qword [esi + eax], xmm2
mov dword [esi + eax + 8], ecx
lea eax, [ebp - 0x2a0]
push eax
mov ecx, esi
call fcn.10045930
mov eax, dword [ebp - 0x27c]
mov ecx, dword [eax + 0xbc]
movq xmm0, qword [eax + 0xb4]
mov dword [ebp - 0x268], ecx
mov ecx, dword [0x102a7c58]
movq qword [ebp - 0x288], xmm0
test cl, 1
jne 0x1010d473
or ecx, 1
mov dword [0x102a7c58], ecx
push 0x7d388d3e
push 0x1eee87cc
mov dword [ebp - 4], 0x11
call fcn.100f1390
movq xmm0, qword [ebp - 0x288]
mov ecx, eax
mov eax, dword [ebp - 0x27c]
add esp, 8
mov dword [0x102a7c54], ecx
mov dword [ebp - 4], 0xffffffff
jmp 0x1010d479
mov ecx, dword [0x102a7c54]
mov edx, dword [ebp - 0x268]
movq qword [esi + ecx], xmm0
mov dword [esi + ecx + 8], edx
movq xmm0, qword [eax + 0xa8]
mov eax, dword [eax + 0xb0]
mov dword [ebp - 0x268], eax
mov eax, dword [0x102a7c50]
movq qword [ebp - 0x288], xmm0
test al, 1
jne 0x1010d4e4
or eax, 1
mov dword [0x102a7c50], eax
push 0xe57f80c
push 0x1eee87cc
mov dword [ebp - 4], 0x12
call fcn.100f1390
movq xmm0, qword [ebp - 0x288]
add esp, 8
mov dword [0x102a7c4c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1010d4e9
mov eax, dword [0x102a7c4c]
mov ecx, dword [ebp - 0x268]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov ecx, dword [0x102a7d50]
test cl, 1
jne 0x1010d53c
or ecx, 1
mov dword [0x102a7d50], ecx
push 0xddac019e
push 0x54aff69
mov dword [ebp - 4], 0x13
call fcn.100f1390
mov ecx, dword [0x102a7d50]
add esp, 8
add eax, 0x1c
mov dword [ebp - 4], 0xffffffff
mov dword [0x102a7d4c], eax
jmp 0x1010d541
mov eax, dword [0x102a7d4c]
lea edx, [eax + esi]
test edx, edx
je 0x1010d582
mov dword [edx + 8], 0
mov dword [edx + 4], 0
mov eax, dword [0x102a79f8]
test eax, eax
je 0x1010d562
add eax, 0xa
mov eax, dword [eax]
mov eax, dword [eax]
dec eax
mov dword [esi + 0x2690], eax
mov dword [esi + 0x2924], 0xff7fffff
mov ecx, dword [0x102a7d50]
mov eax, dword [0x102a7d4c]
test cl, 1
jne 0x1010d5b8
or ecx, 1
mov dword [0x102a7d50], ecx
push 0xddac019e
push 0x54aff69
mov dword [ebp - 4], 0x14
call fcn.100f1390
add esp, 8
mov dword [ebp - 4], 0xffffffff
add eax, 0x1c
mov dword [0x102a7d4c], eax
add eax, esi
mov dword [ebp - 0x268], eax
je 0x1010d604
mov eax, dword [esi + 0x2920]
mov edi, dword [esi + 0x2914]
mov esi, dword [ebp - 0x278]
lea ecx, [eax + eax*2]
shl ecx, 4
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp - 0x26c]
mov edi, dword [ebp - 0x268]
mov esi, dword [ebp - 0x278]
mov eax, dword [ecx + 0x2920]
mov edi, dword [edi]
lea ecx, [eax + eax*2]
shl ecx, 4
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 0x28c]
mov eax, dword [0x102a7958]
movss xmm0, dword [ebp - 0x2c0]
add eax, 0xabc5fa12
mov edx, dword [edi + 0x63e78]
xor eax, 0x5b1c6e88
push 0
push 0
mov ecx, dword [eax + 0x150]
lea eax, [edi + 0x656e0]
push eax
sub esp, 0xc
mov eax, esp
push edx
movss dword [eax], xmm0
movss xmm0, dword [ebp - 0x2bc]
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x2b8]
movss dword [eax + 8], xmm0
lea eax, [ebp - 0x2a8]
push ecx
push eax
call fcn.100fadd0
mov esi, dword [edi + 0x63e78]
add esp, 0x24
mov dword [ebp - 0x278], esi
movups xmm0, xmmword [eax]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x2c], eax
mov eax, dword [edi + 0x63e88]
movups xmmword [ebp - 0x3c], xmm0
mov dword [ebp - 0x268], eax
movq xmm0, qword [edi + 0x63e80]
mov eax, dword [0x102a7c48]
movq qword [ebp - 0x288], xmm0
test al, 1
jne 0x1010d6db
or eax, 1
mov dword [0x102a7c48], eax
push 0x559d81af
push 0x1eee87cc
mov dword [ebp - 4], 0x15
call fcn.100f1390
movq xmm0, qword [ebp - 0x288]
add esp, 8
mov dword [0x102a7c44], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1010d6e0
mov eax, dword [0x102a7c44]
mov ecx, dword [ebp - 0x268]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
lea eax, [edi + 0x63e8c]
push eax
mov ecx, esi
call fcn.10045930
mov eax, dword [edi + 0x63ea0]
movq xmm0, qword [edi + 0x63e98]
mov dword [ebp - 0x268], eax
mov eax, dword [0x102a7cd0]
movq qword [ebp - 0x288], xmm0
test al, 1
jne 0x1010d759
or eax, 1
mov dword [0x102a7cd0], eax
push 0xf3c2c786
push 0x72e242a1
mov dword [ebp - 4], 0x16
call fcn.100f1390
movq xmm0, qword [ebp - 0x288]
add esp, 8
mov dword [0x102a7ccc], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1010d75e
mov eax, dword [0x102a7ccc]
mov ecx, dword [ebp - 0x268]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov eax, dword [edi + 0x63eb8]
movq xmm0, qword [edi + 0x63eb0]
mov dword [ebp - 0x268], eax
mov eax, dword [0x102a7c58]
movq qword [ebp - 0x288], xmm0
test al, 1
jne 0x1010d7c9
or eax, 1
mov dword [0x102a7c58], eax
push 0x7d388d3e
push 0x1eee87cc
mov dword [ebp - 4], 0x17
call fcn.100f1390
movq xmm0, qword [ebp - 0x288]
add esp, 8
mov dword [0x102a7c54], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1010d7ce
mov eax, dword [0x102a7c54]
mov ecx, dword [ebp - 0x268]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov eax, dword [edi + 0x63eac]
movq xmm0, qword [edi + 0x63ea4]
mov dword [ebp - 0x268], eax
mov eax, dword [0x102a7c50]
movq qword [ebp - 0x288], xmm0
test al, 1
jne 0x1010d839
or eax, 1
mov dword [0x102a7c50], eax
push 0xe57f80c
push 0x1eee87cc
mov dword [ebp - 4], 0x18
call fcn.100f1390
movq xmm0, qword [ebp - 0x288]
add esp, 8
mov dword [0x102a7c4c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1010d83e
mov eax, dword [0x102a7c4c]
mov ecx, dword [ebp - 0x268]
movq qword [esi + eax], xmm0
mov dword [esi + eax + 8], ecx
mov ecx, dword [0x102a7d50]
test cl, 1
jne 0x1010d891
or ecx, 1
mov dword [0x102a7d50], ecx
push 0xddac019e
push 0x54aff69
mov dword [ebp - 4], 0x19
call fcn.100f1390
mov ecx, dword [0x102a7d50]
add esp, 8
add eax, 0x1c
mov dword [ebp - 4], 0xffffffff
mov dword [0x102a7d4c], eax
jmp 0x1010d896
mov eax, dword [0x102a7d4c]
lea edx, [esi + eax]
test edx, edx
je 0x1010d8d7
mov dword [edx + 8], 0
mov dword [edx + 4], 0
mov eax, dword [0x102a79f8]
test eax, eax
je 0x1010d8b7
add eax, 0xa
mov eax, dword [eax]
mov eax, dword [eax]
dec eax
mov dword [esi + 0x2690], eax
mov dword [esi + 0x2924], 0xff7fffff
mov ecx, dword [0x102a7d50]
mov eax, dword [0x102a7d4c]
lea edx, [edi + 0x63ec0]
mov dword [ebp - 0x26c], edx
test cl, 1
jne 0x1010d919
or ecx, 1
mov dword [0x102a7d50], ecx
push 0xddac019e
push 0x54aff69
mov dword [ebp - 4], 0x1a
call fcn.100f1390
add esp, 8
mov dword [ebp - 4], 0xffffffff
add eax, 0x1c
mov dword [0x102a7d4c], eax
lea edx, [esi + eax]
test edx, edx
je 0x1010d95c
mov eax, dword [esi + 0x2920]
mov edi, dword [esi + 0x2914]
mov esi, dword [ebp - 0x26c]
lea ecx, [eax + eax*2]
mov eax, dword [ebp - 0x278]
shl ecx, 4
rep movsb byte es:[edi], byte [esi]
mov eax, dword [eax + 0x2920]
mov edi, dword [edx]
mov esi, dword [ebp - 0x26c]
lea ecx, [eax + eax*2]
shl ecx, 4
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 0x28c]
mov eax, dword [ebp - 0x274]
cmp dword [ebp - 0x3c], eax
jl 0x1010eafe
mov eax, dword [0x102a7958]
lea ecx, [eax - 0x543a05ee]
xor ecx, 0x5b1c6e88
mov esi, dword [ecx + 0x154]
mov ecx, dword [0x102a7da0]
test cl, 1
jne 0x1010d9c5
or ecx, 1
mov dword [0x102a7da0], ecx
push 0xa2ccb41a
push 0xcd2ed041
mov dword [ebp - 4], 0x1b
call fcn.100f1390
mov ecx, eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x102a7958]
add esp, 8
mov dword [0x102a7d9c], ecx
jmp 0x1010d9cb
mov ecx, dword [0x102a7d9c]
movzx ecx, word [esi + ecx]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
mov edx, ecx
mov esi, ecx
mov dword [ebp - 0x268], edx
mov ecx, dword [eax + 0x110]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
movsx eax, si
push eax
call edx
test eax, eax
je 0x1010da08
cmp si, 0x1f
jne 0x1010da08
cmp dword [ebp - 0x38], 4
jl 0x1010eafe
cmp byte [edi], 0
je 0x1010eafe
cmp byte [ebp - 0x27d], 0
je 0x1010da23
test byte [edi + 0x65734], 1
jne 0x1010da4c
mov ecx, edi
call fcn.10106900
cmp byte [edi + 0x65701], 0
je 0x1010da4c
lea eax, [edi + 0x656c8]
mov ecx, edi
push eax
call fcn.1010f0b0
test al, al
je 0x1010da4c
mov byte [edi + 0x63d68], 1
mov eax, dword [0x10bf3c48]
add eax, 0x23679c21
xor eax, 0x43db7564
cmp byte [eax + 0x20], 0
jne 0x1010da7d
cmp byte [eax + 0x21], 0
je 0x1010da7d
cmp dword [eax + 0x24], 0
jg 0x1010da7d
cmp dword [eax + 4], 0
jne 0x1010da7d
cmp dword [eax + 0x48], 2
jle 0x1010eafe
push 0
mov ecx, edi
call fcn.10104a60
test al, al
je 0x1010eafe
movd xmm0, dword [edi + 0x65704]
lea eax, [ebp - 0x26c]
mov esi, dword [ebp - 0x27c]
push eax
push 0
cvtdq2ps xmm0, xmm0
lea eax, [ebp - 0x268]
mov dword [ebp - 0x26c], 0
push eax
push esi
lea eax, [edi + 0x656c8]
push eax
mulss xmm0, dword [0x101a0ee8]
lea eax, [edi + 0x63e70]
push eax
sub esp, 0xc
mov eax, esp
movss dword [ebp - 0x268], xmm0
movss xmm0, dword [ebp - 0x2c0]
movss dword [eax], xmm0
movss xmm0, dword [ebp - 0x2bc]
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x2b8]
movss dword [eax + 8], xmm0
call fcn.10108360
add esp, 0x24
test al, al
je 0x1010eafe
cmp byte [0x10c01630], 0
je 0x1010db35
mov eax, dword [0x102a7958]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
mov eax, dword [eax + 0x15c]
or dword [eax + 0x30], 1
mov eax, dword [0x102a7958]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
mov eax, dword [eax + 0x15c]
test byte [eax + 0x30], 1
je 0x1010e884
mov byte [edi + 0x63d69], 1
mov edx, dword [0x102a7958]
movss xmm0, dword [esi + 0x28]
add edx, 0xabc5fa12
xor edx, 0x5b1c6e88
movss dword [ebp - 0x278], xmm0
movss xmm1, dword [0x101a0e20]
addss xmm0, dword [edx + 0x3c]
mov eax, dword [edx + 0x10c]
divss xmm0, dword [eax + 0x20]
mov eax, dword [edx + 0x15c]
addss xmm0, xmm1
cvttss2si ecx, xmm0
mov dword [eax + 8], ecx
mov eax, dword [edi + 0x63e78]
mov dword [ebp - 0x268], eax
mov eax, dword [0x102a7d20]
test al, 1
jne 0x1010dbef
or eax, 1
mov dword [0x102a7d20], eax
push 0x7fcb378d
push 0x1eee87cc
mov dword [ebp - 4], 0x1c
call fcn.100f1390
movss xmm1, dword [0x101a0e20]
add esp, 8
mov dword [0x102a7d1c], eax
mov dword [ebp - 4], 0xffffffff
jmp 0x1010dbf4
mov eax, dword [0x102a7d1c]
mov ecx, dword [ebp - 0x268]
movss xmm0, dword [ecx + eax]
mov eax, dword [0x102a7958]
subss xmm0, dword [ebp - 0x278]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
mov eax, dword [eax + 0x10c]
divss xmm0, dword [eax + 0x20]
addss xmm0, xmm1
cvttss2si eax, xmm0
cdq
xor eax, edx
sub eax, edx
test byte [0x10c024f8], 4
je 0x1010e2b3
cmp byte [esi + 0xc], 0
je 0x1010dc46
mov eax, dword [esi + 0x14]
neg eax
movss xmm0, dword [ebp - 0x26c]
mulss xmm0, dword [0x101a0f30]
mov dword [ebp - 0x278], eax
push dword [edi + 0x656cc]
cvttss2si eax, xmm0
mov dword [ebp - 0x284], eax
lea eax, [ebp - 0x108]
push eax
call fcn.100ebcf0
add esp, 8
cmp dword [eax + 0x14], 0xf
mov dword [ebp - 4], 0x1d
jbe 0x1010dc8a
mov eax, dword [eax]
mov esi, dword [edi + 0x63e78]
xorps xmm0, xmm0
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0x2b4], eax
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0xf
mov byte [ebp - 0xf0], 0
push 0x158
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0x1f
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov eax, dword [0x102a7958]
lea ecx, [esi + 8]
add eax, 0xabc5fa12
add esp, 0xc
xor eax, 0x5b1c6e88
mov edi, dword [eax + 0xc8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
call eax
mov esi, eax
mov dword [ebp - 0x268], 8
lea eax, [ebp - 0x268]
push eax
lea eax, [ebp - 0x26c]
push edi
push eax
call fcn.100ee230
add esp, 0xc
lea ecx, [ebp - 0x260]
mov eax, dword [eax]
push ecx
push esi
mov ecx, edi
call eax
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x2c], 0
movups xmmword [ebp - 0x40], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1010dd43
sub ecx, edx
lea eax, [ebp - 0x250]
push ecx
push eax
lea ecx, [ebp - 0x40]
call fcn.10011990
lea eax, [ebp - 0x40]
mov dword [ebp - 4], 0x21
push eax
lea ecx, [ebp - 0xd8]
mov dword [ebp - 0x2ac], 2
call fcn.10029010
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x2ac], 4
cmp ecx, 0xf
jbe 0x1010ddc3
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
mov dword [ebp - 4], 0x22
cmp ecx, 0x1000
jb 0x1010ddb9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1010ddb9
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101847fa
add esp, 8
cmp dword [ebp - 0xc4], 0xf
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 0x1f
cmova eax, dword [ebp - 0xd8]
cmp byte [0x102a29c8], 0
mov dword [ebp - 0x2b0], eax
je 0x1010de7e
cmp byte [0x102a29c9], 0
jne 0x1010def9
xor esi, esi
mov byte [0x102a29c9], 1
mov dword [ebp - 0x26c], esi
nop dword [eax]
xor esi, dword [0x102a2a10]
xor edi, edi
xor edi, dword [0x102a2a14]
xor esi, 0x1de26cd5
xor edi, 0xd28f2c5
mov eax, esi
mov ecx, edi
shld ecx, eax, 0xd
xor edi, ecx
shl eax, 0xd
xor esi, eax
mov edx, edi
mov ecx, esi
shrd ecx, edx, 7
xor ecx, esi
shr edx, 7
mov esi, dword [ebp - 0x26c]
xor edx, edi
mov dword [ebp - 0x268], ecx
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [esi + 0x102a29ca]
xor cl, byte [ebp - 0x268]
mov byte [esi + 0x102a29ca], cl
inc esi
mov dword [ebp - 0x26c], esi
cmp esi, 0x3f
jb 0x1010de10
jmp 0x1010def9
xor esi, esi
mov dword [ebp - 0x26c], esi
nop word [eax + eax]
xor esi, dword [0x102a2a10]
xor edi, edi
xor edi, dword [0x102a2a14]
xor esi, 0x1de26cd5
xor edi, 0xd28f2c5
mov eax, esi
mov ecx, edi
shld ecx, eax, 0xd
xor edi, ecx
shl eax, 0xd
xor esi, eax
mov edx, edi
mov ecx, esi
shrd ecx, edx, 7
xor ecx, esi
shr edx, 7
mov esi, dword [ebp - 0x26c]
xor edx, edi
mov dword [ebp - 0x268], ecx
shld edx, ecx, 0x11
shl ecx, 0x11
xor cl, byte [esi + 0x102a29ca]
xor cl, byte [ebp - 0x268]
mov byte [esi + 0x102a29ca], cl
inc esi
mov dword [ebp - 0x26c], esi
cmp esi, 0x3f
jb 0x1010de90
lea eax, [ebp - 0x27d]
push eax
push 0x102a2a08
push 0x102a29ca
lea ecx, [ebp - 0xc0]
call fcn.10027a10
mov dword [ebp - 0x2ac], 0x1c
cmp dword [ebp - 0xac], 0xf
lea esi, [ebp - 0xc0]
push 1
cmova esi, dword [ebp - 0xc0]
lea ecx, [ebp - 0x1a0]
mov byte [ebp - 4], 0x23
call fcn.10028f50
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 0x24
mov dword [ebp - 0x90], eax
mov ecx, 6
mov dword [ebp - 0x8c], 6
lea eax, [ebp - 0x80]
mov dword [eax - 8], 0
lea eax, [eax + 0xc]
mov dword [eax - 0x10], 0
mov dword [eax - 0xc], 0
sub ecx, 1
jne 0x1010df66
mov ecx, dword [ebp - 0x270]
lea eax, [ebp - 0x2b0]
push dword [ebp - 0x8c]
mov dword [ebp - 0x2a0], eax
lea eax, [ebp - 0x2b4]
push dword [ebp - 0x90]
mov dword [ebp - 0x29c], 0x10053300
movq xmm0, qword [ebp - 0x2a0]
mov dword [ebp - 0x2a0], eax
lea eax, [ebp - 0x284]
movq qword [ebp - 0x88], xmm0
mov dword [ebp - 0x29c], 0x10053300
movq xmm0, qword [ebp - 0x2a0]
mov dword [ebp - 0x2a0], eax
lea eax, [ecx + 0xc]
movq qword [ebp - 0x7c], xmm0
mov dword [ebp - 0x29c], 0x10028a90
movq xmm0, qword [ebp - 0x2a0]
mov dword [ebp - 0x2a0], eax
lea eax, [ecx + 8]
movq qword [ebp - 0x70], xmm0
mov dword [ebp - 0x29c], 0x10028a90
movq xmm0, qword [ebp - 0x2a0]
mov dword [ebp - 0x2a0], eax
lea eax, [ebp - 0x278]
movq qword [ebp - 0x64], xmm0
mov dword [ebp - 0x29c], 0x10028a90
movq xmm0, qword [ebp - 0x2a0]
mov dword [ebp - 0x2a0], eax
lea eax, [ebp - 0x1a0]
movq qword [ebp - 0x58], xmm0
mov dword [ebp - 0x29c], 0x10028a90
movq xmm0, qword [ebp - 0x2a0]
push esi
push eax
mov dword [ebp - 0x80], fcn.10025470
mov dword [ebp - 0x74], fcn.10025470
mov dword [ebp - 0x68], 0x10028c70
mov dword [ebp - 0x5c], 0x10028c70
mov dword [ebp - 0x50], 0x10028c70
movq qword [ebp - 0x4c], xmm0
mov dword [ebp - 0x44], 0x10028c70
call fcn.1002ac80
add esp, 0x10
lea eax, [ebp - 0xa8]
lea ecx, [ebp - 0x1a0]
push eax
call fcn.1002e440
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x2ac], 0x3c
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0x1a0], 0x101a0fa8
mov eax, dword [ebp - 0x1a0]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0x1a4], eax
lea ecx, [ebp - 0x19c]
call fcn.10029430
lea ecx, [ebp - 0x198]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0x150]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
movss xmm1, dword [0x101a1054]
movss xmm0, dword [0x10c0299c]
mulss xmm0, xmm1
mov byte [ebp - 4], 0x25
cvttss2si eax, xmm0
movss xmm0, dword [0x10c02998]
mulss xmm0, xmm1
mov dword [ebp - 0x270], eax
cvttss2si edx, xmm0
movss xmm0, dword [0x10c02994]
mulss xmm0, xmm1
mov byte [ebp - 0x272], dl
cvttss2si ecx, xmm0
movss xmm0, dword [0x10c02990]
mulss xmm0, xmm1
mov byte [ebp - 0x273], cl
cvttss2si eax, xmm0
mov byte [ebp - 0x274], al
mov eax, dword [ebp - 0x270]
mov ecx, 0x10293488
mov byte [ebp - 0x271], al
mov eax, dword [ebp - 0x274]
mov dword [ebp - 0x268], eax
mov eax, dword [0x102a7958]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
mov edi, dword [eax + 0xec]
lea eax, [ebp - 0x40]
push eax
call fcn.10029c40
mov dword [ebp - 0x2ac], 0x7c
cmp dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x270]
push eax
push ecx
mov eax, esp
mov dword [ebp - 0x270], 0x19
lea esi, [ebp - 0x40]
mov byte [ebp - 4], 0x26
cmova esi, dword [ebp - 0x40]
mov dword [eax], edi
lea eax, [ebp - 0x26c]
push eax
call fcn.100ee230
push esi
lea ecx, [ebp - 0x268]
push ecx
mov eax, dword [eax]
push edi
call eax
mov eax, dword [ebp - 0x2c]
add esp, 0x18
mov byte [ebp - 4], 0x25
cmp eax, 0xf
jbe 0x1010e20a
push eax
push dword [ebp - 0x40]
lea eax, [ebp - 0x40]
push eax
call fcn.100163b0
add esp, 0xc
mov eax, dword [0x102a7958]
lea esi, [ebp - 0xa8]
add eax, 0xabc5fa12
mov dword [ebp - 0x270], 0x19
xor eax, 0x5b1c6e88
cmp dword [ebp - 0x94], 0xf
cmova esi, dword [ebp - 0xa8]
mov edi, dword [eax + 0xec]
lea eax, [ebp - 0x270]
push eax
push ecx
mov eax, esp
mov dword [ebp - 0x274], 0xff969696
mov dword [eax], edi
lea eax, [ebp - 0x26c]
push eax
call fcn.100ee230
push esi
push str._s__n
lea ecx, [ebp - 0x274]
mov eax, dword [eax]
push ecx
push edi
call eax
add esp, 0x1c
lea ecx, [ebp - 0xa8]
call fcn.10023b60
lea ecx, [ebp - 0xc0]
call fcn.10023b60
lea ecx, [ebp - 0xd8]
call fcn.10023b60
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0xffffffff
call fcn.10023b60
mov edi, dword [ebp - 0x28c]
mov esi, dword [ebp - 0x27c]
cmp byte [0x10c01f74], 0
je 0x1010e2e0
mov ecx, dword [0x10bf6d30]
lea eax, [esi + 0xaee0]
push eax
push dword [edi + 0x63e78]
add ecx, 0x94ea7398
xor ecx, 0x767edaf8
call fcn.10030f20
lea eax, [edi + 0x656e0]
push eax
lea eax, [ebp - 0x2c0]
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.100ec950
add esp, 0xc
movss xmm0, dword [eax + 4]
fld dword [eax]
fld dword [0x101a0e50]
movss dword [ebp - 0x284], xmm0
movss xmm0, dword [eax + 8]
movss dword [ebp - 0x298], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__CIfmod
movss xmm1, dword [0x101a0e50]
fstp dword [ebp - 0x270]
movss xmm0, dword [ebp - 0x270]
comiss xmm0, dword [0x101a0e48]
jbe 0x1010e344
subss xmm0, xmm1
movss xmm2, dword [0x101a0e58]
comiss xmm2, xmm0
jbe 0x1010e355
addss xmm0, xmm1
fld dword [ebp - 0x284]
fld dword [0x101a0e50]
movss dword [ebp - 0x2a0], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__CIfmod
movss xmm1, dword [0x101a0e50]
fstp dword [ebp - 0x270]
movss xmm0, dword [ebp - 0x270]
comiss xmm0, dword [0x101a0e48]
jbe 0x1010e391
subss xmm0, xmm1
movss xmm2, dword [0x101a0e58]
comiss xmm2, xmm0
jbe 0x1010e3a2
addss xmm0, xmm1
fld dword [ebp - 0x298]
fld dword [0x101a0e50]
movss dword [ebp - 0x29c], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__CIfmod
movss xmm1, dword [0x101a0e50]
fstp dword [ebp - 0x270]
movss xmm0, dword [ebp - 0x270]
comiss xmm0, dword [0x101a0e48]
jbe 0x1010e3de
subss xmm0, xmm1
movss xmm2, dword [0x101a0e58]
comiss xmm2, xmm0
jbe 0x1010e3ef
addss xmm0, xmm1
mov eax, dword [0x102a7958]
add eax, 0xabc5fa12
movss dword [ebp - 0x298], xmm0
movq xmm0, qword [ebp - 0x2a0]
xor eax, 0x5b1c6e88
mov ecx, dword [eax + 0x15c]
mov eax, dword [ebp - 0x298]
movq qword [ecx + 0xc], xmm0
mov dword [ecx + 0x14], eax
mov eax, dword [0x102a7958]
lea ecx, [eax - 0x543a05ee]
xor ecx, 0x5b1c6e88
mov ecx, dword [ecx + 0x150]
mov dword [ebp - 0x270], ecx
mov ecx, dword [0x102a7cb0]
test cl, 1
jne 0x1010e482
or ecx, 1
mov dword [0x102a7cb0], ecx
push 0x1e948cb9
push 0x4e9f1122
mov dword [ebp - 4], 0x28
call fcn.100f1390
mov esi, eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [0x102a7958]
add esp, 8
mov dword [0x102a7cac], esi
jmp 0x1010e488
mov esi, dword [0x102a7cac]
lea edx, [eax - 0x543a05ee]
xor edx, 0x5b1c6e88
mov ecx, dword [edx + 0x1c4]
mov eax, dword [ecx + 0x1c]
mov eax, dword [eax + 0x2c]
xor eax, ecx
mov ecx, dword [ebp - 0x270]
mov dword [ebp - 0x284], eax
mov eax, dword [edx + 0x15c]
movss xmm2, dword [ebp - 0x284]
movss xmm3, dword [esi + ecx + 4]
movaps xmm1, xmm2
mulss xmm1, dword [esi + ecx]
movss xmm0, dword [eax + 0xc]
movss xmm4, dword [esi + ecx + 8]
subss xmm0, xmm1
mulss xmm3, xmm2
mulss xmm4, xmm2
movss dword [eax + 0xc], xmm0
movss xmm0, dword [eax + 0x10]
subss xmm0, xmm3
movss dword [eax + 0x10], xmm0
movss xmm0, dword [eax + 0x14]
subss xmm0, xmm4
movss dword [eax + 0x14], xmm0
mov esi, dword [0x102a7958]
lea eax, [esi - 0x543a05ee]
xor eax, 0x5b1c6e88
mov eax, dword [eax + 0x15c]
movss xmm0, dword [eax + 0x10]
fld dword [eax + 0xc]
fld dword [0x101a0e50]
movss dword [ebp - 0x284], xmm0
movss xmm0, dword [eax + 0x14]
movss dword [ebp - 0x298], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__CIfmod
movss xmm0, dword [0x101a0e50]
fstp dword [ebp - 0x270]
movss xmm1, dword [ebp - 0x270]
comiss xmm1, dword [0x101a0e48]
jbe 0x1010e564
subss xmm1, xmm0
movss xmm2, dword [0x101a0e58]
comiss xmm2, xmm1
jbe 0x1010e575
addss xmm1, xmm0
fld dword [ebp - 0x284]
fld dword [0x101a0e50]
movss dword [ebp - 0x2a0], xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll__CIfmod
movss xmm1, dword [0x101a0e50]
fstp dword [ebp - 0x270]
movss xmm0, dword [ebp - 0x270]
comiss xmm0, dword [0x101a0e48]
jbe 0x1010e5b1
subss xmm0, xmm1
movss xmm2, dword [0x101a0e58]
comiss xmm2, xmm0
jbe 0x1010e5c2
addss xmm0, xmm1
fld dword [ebp - 0x298]
fld dword [0x101a0e50]
movss dword [ebp - 0x29c], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__CIfmod
movss xmm1, dword [0x101a0e50]
fstp dword [ebp - 0x270]
movss xmm0, dword [ebp - 0x270]
comiss xmm0, dword [0x101a0e48]
jbe 0x1010e5fe
subss xmm0, xmm1
movss xmm2, dword [0x101a0e58]
comiss xmm2, xmm0
jbe 0x1010e60f
addss xmm0, xmm1
add esi, 0xabc5fa12
movss dword [ebp - 0x298], xmm0
movq xmm0, qword [ebp - 0x2a0]
xor esi, 0x5b1c6e88
mov eax, dword [ebp - 0x298]
mov ecx, dword [esi + 0x15c]
movq qword [ecx + 0xc], xmm0
mov dword [ecx + 0x14], eax
movss xmm0, dword [ebp - 0x2c0]
mov eax, dword [edi + 0x63e78]
movss dword [ebp - 0x284], xmm0
movss xmm0, dword [ebp - 0x2bc]
mov dword [ebp - 0x268], eax
mov eax, dword [edi + 0x63cc4]
movss dword [ebp - 0x2b4], xmm0
movss xmm0, dword [ebp - 0x2b8]
movss dword [ebp - 0x2b0], xmm0
mov dword [ebp - 0x270], eax
cmp eax, dword [edi + 0x63cc8]
je 0x1010e6be
push 0xfa60
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [ebp - 0x270]
add esp, 0xc
call fcn.100ffa40
mov esi, dword [edi + 0x63cc4]
lea eax, [esi + 0xfa60]
mov dword [edi + 0x63cc4], eax
jmp 0x1010e6cc
push eax
lea ecx, [edi + 0x63cc0]
call fcn.100fdb50
mov esi, eax
mov ecx, dword [0x102a7958]
movss xmm0, dword [ebp - 0x284]
add ecx, 0xabc5fa12
xor ecx, 0x5b1c6e88
push 0xf700
mov ecx, dword [ecx + 0x44]
mov dword [esi + 0x14], ecx
mov dword [esi + 0x18], 0
mov word [esi], 0
mov dword [esi + 8], 0xffffffff
mov eax, dword [edi + 0x656d4]
mov dword [esi + 4], eax
movss dword [esi + 0x24], xmm0
movss xmm0, dword [ebp - 0x2b4]
movss dword [esi + 0x28], xmm0
movss xmm0, dword [ebp - 0x2b0]
movss dword [esi + 0x2c], xmm0
mov dword [esi + 0xc], 0xffffffff
mov eax, dword [edi + 0x656d8]
mov dword [esi + 0x1c], eax
mov eax, dword [edi + 0x656cc]
mov edi, dword [ebp - 0x268]
mov dword [esi + 0x10], eax
mov eax, dword [ebp - 0x27c]
push eax
lea eax, [esi + 0x50]
mov dword [esi + 0x48], edi
push eax
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [edi + 8]
lea ecx, [edi + 8]
add esp, 0xc
mov eax, dword [eax + 0x28]
call eax
imul ecx, eax, 0x30c
lea edx, [esi + 0xf750]
mov dword [esi + 0x20], eax
lea edi, [edx + 0x10]
mov dword [ebp - 0x270], edi
add ecx, 0x101d9128
mov dword [ebp - 0x26c], ecx
mov al, byte [ecx]
mov byte [edx], al
mov eax, dword [ecx + 4]
mov dword [edx + 4], eax
mov eax, dword [ecx + 8]
mov dword [edx + 8], eax
mov eax, dword [ecx + 0xc]
mov dword [edx + 0xc], eax
lea eax, [ecx + 0x10]
cmp edi, eax
mov edi, dword [ebp - 0x28c]
je 0x1010e7d7
cmp dword [eax + 0x14], 0xf
mov ecx, dword [eax + 0x10]
jbe 0x1010e7be
mov eax, dword [eax]
push ecx
mov ecx, dword [ebp - 0x270]
push eax
call fcn.1002a970
mov ecx, dword [ebp - 0x26c]
lea edx, [esi + 0xf750]
lea eax, [edx + 0x28]
sub ecx, edx
mov edx, 0xd
lea eax, [eax + 0x38]
movups xmm0, xmmword [ecx + eax - 0x38]
movups xmmword [eax - 0x38], xmm0
movups xmm0, xmmword [ecx + eax - 0x28]
movups xmmword [eax - 0x28], xmm0
movups xmm0, xmmword [ecx + eax - 0x18]
movups xmmword [eax - 0x18], xmm0
movq xmm0, qword [ecx + eax - 8]
movq qword [eax - 8], xmm0
sub edx, 1
jne 0x1010e7e1
mov eax, dword [ebp - 0x26c]
movq xmm0, qword [eax + 0x300]
movq qword [esi + 0xfa50], xmm0
mov eax, dword [eax + 0x308]
mov dword [esi + 0xfa58], eax
movq xmm0, qword [edi + 0x656e0]
movq qword [esi + 0x3c], xmm0
mov eax, dword [edi + 0x656e8]
mov dword [esi + 0x44], eax
cmp byte [0x10c050e8], dl
jne 0x1010e86a
mov ecx, dword [0x1071c058]
add ecx, 0x840e2fed
xor ecx, 0xe0c599ef
call fcn.10025480
test al, al
jne 0x1010e884
mov eax, dword [0x102a7958]
add eax, 0xabc5fa12
xor eax, 0x5b1c6e88
mov eax, dword [eax + 0x10]
cmp byte [eax], 0
jne 0x1010e884
mov byte [eax], 1
push 0x1800
lea eax, [edi + 0x63ec0]
mov word [edi + 0x63e70], 0
push 0
push eax
mov dword [edi + 0x63e74], 0
mov dword [edi + 0x63e78], 0
mov dword [edi + 0x63e88], 0
mov dword [edi + 0x63e84], 0
mov dword [edi + 0x63e80], 0
mov dword [edi + 0x63e94], 0
mov dword [edi + 0x63e90], 0
mov dword [edi + 0x63e8c], 0
mov dword [edi + 0x63eac], 0
mov dword [edi + 0x63ea8], 0
mov dword [edi + 0x63ea4], 0
mov dword [edi + 0x63eb8], 0
mov dword [edi + 0x63eb4], 0
mov dword [edi + 0x63eb0], 0
call sub.VCRUNTIME140.dll_memset
mov dword [edi + 0x656c0], 0
add esp, 0xc
mov dword [edi + 0x656c4], 0
mov dword [edi + 0x656c8], 0
mov dword [edi + 0x656cc], 0
mov dword [edi + 0x656d0], 0
mov dword [edi + 0x656d4], 0
mov dword [edi + 0x656d8], 0
mov dword [edi + 0x656dc], 0
mov dword [edi + 0x656e8], 0
mov dword [edi + 0x656e4], 0
mov dword [edi + 0x656e0], 0
mov eax, dword [edi + 0x656ec]
cmp eax, dword [edi + 0x656f0]
je 0x1010eafe
mov dword [edi + 0x656f0], eax
jmp 0x1010eafe
cmp byte [edi + 1], 0
je 0x1010eafe
lea esi, [edi + 0x30]
lea eax, [esi + 0x63c90]
cmp esi, eax
je 0x1010eaf3
add esi, 0x20
mov edi, eax
nop word [eax + eax]
push 0x1800
lea eax, [esi + 0x30]
mov word [esi - 0x20], 0
push 0
push eax
mov dword [esi - 0x1c], 0
mov dword [esi - 0x18], 0
mov dword [esi - 8], 0
mov dword [esi - 0xc], 0
mov dword [esi - 0x10], 0
mov dword [esi + 4], 0
mov dword [esi], 0
mov dword [esi - 4], 0
mov dword [esi + 0x1c], 0
mov dword [esi + 0x18], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0x28], 0
mov dword [esi + 0x24], 0
mov dword [esi + 0x20], 0
call sub.VCRUNTIME140.dll_memset
mov dword [esi + 0x1830], 0
add esp, 0xc
mov dword [esi + 0x1834], 0
mov dword [esi + 0x1838], 0
mov dword [esi + 0x183c], 0
mov dword [esi + 0x1840], 0
mov dword [esi + 0x1844], 0
mov dword [esi + 0x1848], 0
mov dword [esi + 0x184c], 0
mov dword [esi + 0x1858], 0
mov dword [esi + 0x1854], 0
mov dword [esi + 0x1850], 0
mov eax, dword [esi + 0x185c]
cmp eax, dword [esi + 0x1860]
je 0x1010eadc
mov dword [esi + 0x1860], eax
add esi, 0x1890
lea eax, [esi - 0x20]
cmp eax, edi
jne 0x1010e9e0
mov edi, dword [ebp - 0x28c]
mov dword [edi + 4], 0
mov byte [edi + 1], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.10184b39
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call sub.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_
int3