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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100f5191
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x210
mov eax, dword [0x1010b040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, 0x102e096c
nop word [eax + eax]
mov ecx, 0x21
lea edi, [ebp - 0xc0]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc0]
cmp ecx, 0x1c1
ja 0x10016ae2
imul edi, ecx, 0x84
mov esi, eax
mov ecx, 0x21
add edi, 0x101c4aac
rep movsd dword es:[edi], dword [esi]
add eax, 0x84
cmp eax, 0x102ef174
jl 0x10016ab0
mov eax, 0x102ef174
mov ecx, 0x21
lea edi, [ebp - 0xc0]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc0]
cmp ecx, 0x1c1
ja 0x10016b25
imul edi, ecx, 0x84
mov esi, eax
mov ecx, 0x21
add edi, 0x101d32b4
rep movsd dword es:[edi], dword [esi]
add eax, 0x84
cmp eax, 0x102fd97c
jl 0x10016af3
mov eax, 0x102fd97c
nop word [eax + eax]
mov ecx, 0x21
lea edi, [ebp - 0xc0]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc0]
cmp ecx, 0x1c1
ja 0x10016b72
imul edi, ecx, 0x84
mov esi, eax
mov ecx, 0x21
add edi, 0x101e1abc
rep movsd dword es:[edi], dword [esi]
add eax, 0x84
cmp eax, 0x1030c184
jl 0x10016b40
mov eax, 0x1030c184
mov ecx, 0x2f
lea edi, [ebp - 0xf8]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xf8]
cmp ecx, 0x31
ja 0x10016bb2
imul edi, ecx, 0xbc
mov esi, eax
mov ecx, 0x2f
add edi, 0x101c256c
rep movsd dword es:[edi], dword [esi]
add eax, 0xbc
cmp eax, 0x1030e63c
jl 0x10016b83
mov edx, 0x1030e63c
mov ecx, 0x1e
lea edi, [ebp - 0xb4]
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xb4]
cmp ecx, 0x63
ja 0x10016bf4
mov eax, ecx
mov esi, edx
shl eax, 4
sub eax, ecx
mov ecx, 0x1e
lea edi, [eax*8 + 0x1027f834]
rep movsd dword es:[edi], dword [esi]
add edx, 0x78
cmp edx, 0x1031151c
jl 0x10016bc3
mov edx, 0x1031151c
nop dword [eax]
nop dword [eax + eax]
movups xmm0, xmmword [edx + 0x10]
mov eax, dword [edx + 0x30]
mov dword [ebp - 0x178], eax
mov eax, dword [edx]
movups xmmword [ebp - 0x198], xmm0
movups xmm0, xmmword [edx + 0x20]
movups xmmword [ebp - 0x188], xmm0
cmp eax, 0x7cf
ja 0x10016c5d
movups xmm0, xmmword [edx]
imul ecx, eax, 0x34
mov eax, dword [edx + 0x30]
add ecx, 0x10120464
movups xmmword [ecx], xmm0
movups xmm0, xmmword [edx + 0x10]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [edx + 0x20]
movups xmmword [ecx + 0x20], xmm0
mov dword [ecx + 0x30], eax
add edx, 0x34
cmp edx, 0x1032ab5c
jl 0x10016c10
movups xmm0, xmmword [0x1039621c]
mov edx, dword [0x10396254]
movups xmm1, xmmword [0x1039622c]
movups xmm2, xmmword [0x1039623c]
movq xmm3, qword [0x1039624c]
movd ecx, xmm0
cmp ecx, 2
ja 0x10016cc3
mov eax, ecx
shl eax, 4
sub eax, ecx
movups xmmword [eax*4 + 0x1011c6c8], xmm0
movups xmmword [eax*4 + 0x1011c6d8], xmm1
movups xmmword [eax*4 + 0x1011c6e8], xmm2
movq qword [eax*4 + 0x1011c6f8], xmm3
mov dword [eax*4 + 0x1011c700], edx
movups xmm0, xmmword [0x10396258]
mov edx, dword [0x10396290]
movups xmm1, xmmword [0x10396268]
movups xmm2, xmmword [0x10396278]
movq xmm3, qword [0x10396288]
movd ecx, xmm0
cmp ecx, 2
ja 0x10016d1e
mov eax, ecx
shl eax, 4
sub eax, ecx
movups xmmword [eax*4 + 0x1011c6c8], xmm0
movups xmmword [eax*4 + 0x1011c6d8], xmm1
movups xmmword [eax*4 + 0x1011c6e8], xmm2
movq qword [eax*4 + 0x1011c6f8], xmm3
mov dword [eax*4 + 0x1011c700], edx
movups xmm0, xmmword [0x10396294]
mov edx, dword [0x103962cc]
movups xmm1, xmmword [0x103962a4]
movups xmm2, xmmword [0x103962b4]
movq xmm3, qword [0x103962c4]
movd ecx, xmm0
cmp ecx, 2
ja 0x10016d79
mov eax, ecx
shl eax, 4
sub eax, ecx
movups xmmword [eax*4 + 0x1011c6c8], xmm0
movups xmmword [eax*4 + 0x1011c6d8], xmm1
movups xmmword [eax*4 + 0x1011c6e8], xmm2
movq qword [eax*4 + 0x1011c6f8], xmm3
mov dword [eax*4 + 0x1011c700], edx
mov ecx, 0x103962d0
nop
movups xmm0, xmmword [ecx + 0x10]
mov edx, dword [ecx]
movups xmmword [ebp - 0x84], xmm0
movups xmm0, xmmword [ecx + 0x20]
movups xmmword [ebp - 0x74], xmm0
movups xmm0, xmmword [ecx + 0x30]
movups xmmword [ebp - 0x64], xmm0
movups xmm0, xmmword [ecx + 0x40]
movups xmmword [ebp - 0x54], xmm0
movq xmm0, qword [ecx + 0x50]
movq qword [ebp - 0x44], xmm0
cmp edx, 0x63
ja 0x10016df4
movups xmm0, xmmword [ecx]
lea eax, [edx + 1]
mov dword [0x114dae6c], eax
imul eax, edx, 0x58
add eax, 0x114d8c08
movups xmmword [eax], xmm0
movups xmm0, xmmword [ecx + 0x10]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [ecx + 0x20]
movups xmmword [eax + 0x20], xmm0
movups xmm0, xmmword [ecx + 0x30]
movups xmmword [eax + 0x30], xmm0
movups xmm0, xmmword [ecx + 0x40]
movups xmmword [eax + 0x40], xmm0
movq xmm0, qword [ecx + 0x50]
movq qword [eax + 0x50], xmm0
add ecx, 0x58
cmp ecx, 0x10398530
jl 0x10016d80
mov eax, 0x103a59b0
nop dword [eax]
nop dword [eax + eax]
mov ecx, 0x2d
lea edi, [ebp - 0xf0]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xf0]
cmp ecx, 0xbb7
ja 0x10016e42
imul edi, ecx, 0xb4
mov esi, eax
mov ecx, 0x2d
add edi, 0x10139ae4
rep movsd dword es:[edi], dword [esi]
add eax, 0xb4
cmp eax, 0x10429710
jl 0x10016e10
push 0
push 0x10398530
call fcn.10024b80
push 1
push 0x1039ba50
call fcn.10024b80
mov edx, 0x1039ef70
nop dword [eax + eax]
movups xmm0, xmmword [edx + 0x10]
mov eax, dword [edx + 0x40]
mov dword [ebp - 0x40], eax
mov eax, dword [edx]
movups xmmword [ebp - 0x70], xmm0
movups xmm0, xmmword [edx + 0x20]
movups xmmword [ebp - 0x60], xmm0
movups xmm0, xmmword [edx + 0x30]
movups xmmword [ebp - 0x50], xmm0
cmp eax, 0xc7
ja 0x10016ed7
movups xmm0, xmmword [edx]
mov ecx, eax
shl ecx, 4
add ecx, eax
mov eax, dword [edx + 0x40]
movups xmmword [ecx*4 + 0x114e18b8], xmm0
movups xmm0, xmmword [edx + 0x10]
movups xmmword [ecx*4 + 0x114e18c8], xmm0
movups xmm0, xmmword [edx + 0x20]
movups xmmword [ecx*4 + 0x114e18d8], xmm0
movups xmm0, xmmword [edx + 0x30]
movups xmmword [ecx*4 + 0x114e18e8], xmm0
mov dword [ecx*4 + 0x114e18f8], eax
add edx, 0x44
cmp edx, 0x103a2490
jl 0x10016e70
mov edx, 0x103a2490
nop word [eax + eax]
movups xmm0, xmmword [edx + 0x10]
mov eax, dword [edx + 0x40]
mov dword [ebp - 0x40], eax
mov eax, dword [edx]
movups xmmword [ebp - 0x70], xmm0
movups xmm0, xmmword [edx + 0x20]
movups xmmword [ebp - 0x60], xmm0
movups xmm0, xmmword [edx + 0x30]
movups xmmword [ebp - 0x50], xmm0
cmp eax, 0xc7
ja 0x10016f57
movups xmm0, xmmword [edx]
mov ecx, eax
shl ecx, 4
add ecx, eax
mov eax, dword [edx + 0x40]
movups xmmword [ecx*4 + 0x114e4dd8], xmm0
movups xmm0, xmmword [edx + 0x10]
movups xmmword [ecx*4 + 0x114e4de8], xmm0
movups xmm0, xmmword [edx + 0x20]
movups xmmword [ecx*4 + 0x114e4df8], xmm0
movups xmm0, xmmword [edx + 0x30]
movups xmmword [ecx*4 + 0x114e4e08], xmm0
mov dword [ecx*4 + 0x114e4e18], eax
add edx, 0x44
cmp edx, 0x103a59b0
jl 0x10016ef0
mov edx, 0x1032ab5c
nop word [eax + eax]
movups xmm0, xmmword [edx + 0x10]
mov eax, dword [edx + 0x28]
mov dword [ebp - 0x178], eax
mov eax, dword [edx]
movups xmmword [ebp - 0x190], xmm0
movq xmm0, qword [edx + 0x20]
movq qword [ebp - 0x180], xmm0
cmp eax, 0x1387
ja 0x10016fc1
movups xmm0, xmmword [edx]
imul ecx, eax, 0x2c
mov eax, dword [edx + 0x28]
add ecx, 0x105130d4
movups xmmword [ecx], xmm0
movups xmm0, xmmword [edx + 0x10]
movups xmmword [ecx + 0x10], xmm0
movq xmm0, qword [edx + 0x20]
movq qword [ecx + 0x20], xmm0
mov dword [ecx + 0x28], eax
add edx, 0x2c
cmp edx, 0x103606bc
jl 0x10016f70
mov edx, 0x103606bc
movups xmm0, xmmword [edx + 0x10]
mov eax, dword [edx + 0x28]
mov dword [ebp - 0x178], eax
mov eax, dword [edx]
movups xmmword [ebp - 0x190], xmm0
movq xmm0, qword [edx + 0x20]
movq qword [ebp - 0x180], xmm0
cmp eax, 0x1387
ja 0x10017022
movups xmm0, xmmword [edx]
imul ecx, eax, 0x2c
mov eax, dword [edx + 0x28]
add ecx, 0x10282724
movups xmmword [ecx], xmm0
movups xmm0, xmmword [edx + 0x10]
movups xmmword [ecx + 0x10], xmm0
movq xmm0, qword [edx + 0x20]
movq qword [ecx + 0x20], xmm0
mov dword [ecx + 0x28], eax
add edx, 0x2c
cmp edx, 0x1039621c
jl 0x10016fd1
push 0x10441d88
push 1
call fcn.1004b810
push 0x1044c968
push 2
call fcn.1004b810
push 0x10457548
push 1
call fcn.10044790
push 0x1045cb38
push 2
call fcn.10044790
mov edx, 0x10462128
movups xmm0, xmmword [edx + 0x10]
mov eax, dword [edx + 0x48]
mov dword [ebp - 0x40], eax
mov eax, dword [edx]
movups xmmword [ebp - 0x78], xmm0
movups xmm0, xmmword [edx + 0x20]
movups xmmword [ebp - 0x68], xmm0
movups xmm0, xmmword [edx + 0x30]
movups xmmword [ebp - 0x58], xmm0
movq xmm0, qword [edx + 0x40]
movq qword [ebp - 0x48], xmm0
cmp eax, 0x63
ja 0x100170c8
movups xmm0, xmmword [edx]
imul ecx, eax, 0x4c
mov eax, dword [edx + 0x48]
add ecx, 0x1011c784
movups xmmword [ecx], xmm0
movups xmm0, xmmword [edx + 0x10]
movups xmmword [ecx + 0x10], xmm0
movups xmm0, xmmword [edx + 0x20]
movups xmmword [ecx + 0x20], xmm0
movups xmm0, xmmword [edx + 0x30]
movups xmmword [ecx + 0x30], xmm0
movq xmm0, qword [edx + 0x40]
movq qword [ecx + 0x40], xmm0
mov dword [ecx + 0x48], eax
add edx, 0x4c
cmp edx, 0x10463ed8
jl 0x10017062
mov edx, 0x10463ed8
nop dword [eax + eax]
mov eax, dword [edx + 0x18]
movq xmm0, qword [edx + 0x10]
mov dword [ebp - 0x178], eax
mov eax, dword [edx]
movq qword [ebp - 0x180], xmm0
cmp eax, 0x1f3
ja 0x1001712b
movups xmm0, xmmword [edx]
lea ecx, [eax*8]
sub ecx, eax
mov eax, dword [edx + 0x18]
movups xmmword [ecx*4 + 0x102590fc], xmm0
movq xmm0, qword [edx + 0x10]
movq qword [ecx*4 + 0x1025910c], xmm0
mov dword [ecx*4 + 0x10259114], eax
add edx, 0x1c
cmp edx, 0x10467588
jl 0x100170e0
mov edx, 0x10467588
nop dword [eax + eax]
mov eax, dword [edx + 0x18]
movq xmm0, qword [edx + 0x10]
mov dword [ebp - 0x178], eax
mov eax, dword [edx]
movq qword [ebp - 0x180], xmm0
cmp eax, 0x18f
ja 0x1001718b
movups xmm0, xmmword [edx]
lea ecx, [eax*8]
sub ecx, eax
mov eax, dword [edx + 0x18]
movups xmmword [ecx*4 + 0x10214994], xmm0
movq xmm0, qword [edx + 0x10]
movq qword [ecx*4 + 0x102149a4], xmm0
mov dword [ecx*4 + 0x102149ac], eax
add edx, 0x1c
cmp edx, 0x1046a148
jl 0x10017140
mov edx, 0x1042be20
nop dword [eax + eax]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x178], eax
mov eax, dword [edx]
cmp eax, 0x95
ja 0x100171ca
movups xmm0, xmmword [edx]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x10]
movups xmmword [ecx*4 + 0x1011e53c], xmm0
mov dword [ecx*4 + 0x1011e54c], eax
add edx, 0x14
cmp edx, 0x1042c9d8
jl 0x100171a0
mov edx, 0x10429710
nop word [eax + eax]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x178], eax
mov eax, dword [edx]
cmp eax, 0x1f3
ja 0x1001720a
movups xmm0, xmmword [edx]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x10]
movups xmmword [ecx*4 + 0x102dd244], xmm0
mov dword [ecx*4 + 0x102dd254], eax
add edx, 0x14
cmp edx, 0x1042be20
jl 0x100171e0
mov eax, 0x1042c9d8
nop word [eax + eax]
mov ecx, 0x2f
lea edi, [ebp - 0xf8]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xf8]
cmp ecx, 0xc7
ja 0x10017258
imul edi, ecx, 0xbc
mov esi, eax
mov ecx, 0x2f
add edi, 0x101fb33c
rep movsd dword es:[edi], dword [esi]
inc dword [0x101f9e1c]
add eax, 0xbc
cmp eax, 0x10435cb8
jl 0x10017220
mov ecx, 0x10435cb8
nop dword [eax]
movups xmm0, xmmword [ecx + 0x10]
mov eax, dword [ecx]
movups xmmword [ebp - 0x194], xmm0
movups xmm0, xmmword [ecx + 0x20]
movups xmmword [ebp - 0x184], xmm0
cmp eax, 0xc7
ja 0x100172b0
movups xmm0, xmmword [ecx]
lea eax, [eax + eax*2]
shl eax, 4
add eax, 0x1023a18c
movups xmmword [eax], xmm0
movups xmm0, xmmword [ecx + 0x10]
movups xmmword [eax + 0x10], xmm0
movups xmm0, xmmword [ecx + 0x20]
movups xmmword [eax + 0x20], xmm0
add ecx, 0x30
cmp ecx, 0x10438238
jl 0x10017270
mov eax, 0x10438238
mov ecx, 0x1f
lea edi, [ebp - 0xb8]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xb8]
cmp ecx, 0x27
ja 0x100172ec
imul edi, ecx, 0x7c
mov esi, eax
mov ecx, 0x1f
add edi, 0x1011f0fc
rep movsd dword es:[edi], dword [esi]
add eax, 0x7c
cmp eax, 0x10439598
jl 0x100172c0
mov ecx, dword [0x114eccc8]
mov esi, 0x10439598
mov dword [ebp - 0x1b4], ecx
nop word [eax + eax]
movups xmm0, xmmword [esi + 0x10]
movups xmm1, xmmword [esi]
movups xmmword [ebp - 0x6c], xmm0
movups xmm0, xmmword [esi + 0x20]
movd eax, xmm1
movups xmmword [ebp - 0x5c], xmm0
movups xmm0, xmmword [esi + 0x30]
movups xmmword [ebp - 0x7c], xmm1
movups xmmword [ebp - 0x4c], xmm0
cmp eax, 0xc7
ja 0x1001749e
lea eax, [ebp - 0x78]
mov ecx, 0x114eccc8
push eax
lea eax, [ebp - 0x1e8]
push eax
call fcn.10011a90
mov eax, dword [ebp - 0x1e0]
mov edi, dword [ebp - 0x78]
cmp byte [eax + 0xd], 0
jne 0x1001736f
cmp edi, dword [eax + 0x10]
jl 0x1001736f
mov ecx, dword [ebp - 0x1b4]
jmp 0x10017377
mov ecx, dword [ebp - 0x1b4]
mov eax, ecx
test edi, edi
jle 0x1001749e
cmp eax, ecx
jne 0x1001749e
movups xmm0, xmmword [esi]
lea eax, [ebp - 0x80]
mov dword [ebp - 0x80], edi
push eax
movups xmmword [ebp - 0x7c], xmm0
lea eax, [ebp - 0x20c]
mov ecx, 0x114eccc8
movups xmmword [ebp - 0x220], xmm0
push eax
movups xmm0, xmmword [esi + 0x10]
movups xmmword [ebp - 0x6c], xmm0
movups xmmword [ebp - 0x1d8], xmm0
movups xmm0, xmmword [esi + 0x20]
movups xmmword [ebp - 0x5c], xmm0
movups xmmword [ebp - 0x30], xmm0
movups xmm0, xmmword [esi + 0x30]
movups xmmword [ebp - 0x1f8], xmm0
movups xmmword [ebp - 0x4c], xmm0
call fcn.10011a90
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x170], xmm0
cmp byte [eax + 0xd], 0
jne 0x100173f5
cmp edi, dword [eax + 0x10]
jge 0x1001749e
cmp dword [0x114ecccc], 0x30c30c3
je 0x10018210
mov dword [ebp - 0x1c4], 0x114eccc8
mov dword [ebp - 4], 0
push 0x54
mov dword [ebp - 0x1c0], 0
call fcn.100d22ee
mov dword [ebp - 4], 0xffffffff
add esp, 4
movups xmm0, xmmword [ebp - 0x220]
mov ecx, dword [ebp - 0x1b4]
mov dword [eax + 0x10], edi
movups xmmword [eax + 0x14], xmm0
push eax
movups xmm0, xmmword [ebp - 0x1d8]
mov dword [ebp - 0x1c0], 0
push dword [ebp - 0x16c]
movups xmmword [eax + 0x24], xmm0
movups xmm0, xmmword [ebp - 0x30]
push dword [ebp - 0x170]
movups xmmword [eax + 0x34], xmm0
movups xmm0, xmmword [ebp - 0x1f8]
movups xmmword [eax + 0x44], xmm0
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov ecx, 0x114eccc8
mov word [eax + 0xc], 0
call fcn.10011ae0
mov ecx, dword [0x114eccc8]
mov dword [ebp - 0x1b4], ecx
add esi, 0x40
cmp esi, 0x1043c798
jl 0x10017310
mov edx, 0x1043c798
movups xmm0, xmmword [edx + 0x10]
mov eax, dword [edx + 0x38]
mov dword [ebp - 0x178], eax
mov eax, dword [edx]
movups xmmword [ebp - 0x1a0], xmm0
movups xmm0, xmmword [edx + 0x20]
movups xmmword [ebp - 0x190], xmm0
movq xmm0, qword [edx + 0x30]
movq qword [ebp - 0x180], xmm0
cmp eax, 0x63
ja 0x10017527
movups xmm0, xmmword [edx]
mov ecx, eax
shl ecx, 4
sub ecx, eax
mov eax, dword [edx + 0x38]
movups xmmword [ecx*4 + 0x1011af54], xmm0
movups xmm0, xmmword [edx + 0x10]
movups xmmword [ecx*4 + 0x1011af64], xmm0
movups xmm0, xmmword [edx + 0x20]
movups xmmword [ecx*4 + 0x1011af74], xmm0
movq xmm0, qword [edx + 0x30]
movq qword [ecx*4 + 0x1011af84], xmm0
mov dword [ecx*4 + 0x1011af8c], eax
add edx, 0x3c
cmp edx, 0x1043df08
jl 0x100174b2
mov ecx, 0x1043df08
nop word [eax + eax]
movups xmm0, xmmword [ecx + 0x10]
mov eax, dword [ecx]
movups xmmword [ebp - 0x184], xmm0
cmp eax, 0x1f3
ja 0x1001756a
movups xmm0, xmmword [ecx]
shl eax, 5
add eax, 0x101be6e4
movups xmmword [eax], xmm0
movups xmm0, xmmword [ecx + 0x10]
movups xmmword [eax + 0x10], xmm0
add ecx, 0x20
cmp ecx, 0x10441d88
jl 0x10017540
mov eax, 0x1046a148
nop word [eax + eax]
mov ecx, 0x24
lea edi, [ebp - 0xcc]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xcc]
cmp ecx, 0x12b
ja 0x100175b2
lea edi, [ecx + ecx*8]
mov esi, eax
shl edi, 4
mov ecx, 0x24
add edi, 0x1025e01c
rep movsd dword es:[edi], dword [esi]
add eax, 0x90
cmp eax, 0x10474a08
jl 0x10017580
mov eax, 0x10474a08
mov ecx, 0x24
lea edi, [ebp - 0xcc]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xcc]
cmp ecx, 0x12b
ja 0x100175f5
lea edi, [ecx + ecx*8]
mov esi, eax
shl edi, 4
mov ecx, 0x24
add edi, 0x102688dc
rep movsd dword es:[edi], dword [esi]
add eax, 0x90
cmp eax, 0x1047f2c8
jl 0x100175c3
mov eax, 0x1047f2c8
nop word [eax + eax]
mov ecx, 0x24
lea edi, [ebp - 0xcc]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xcc]
cmp ecx, 0x12b
ja 0x10017642
lea edi, [ecx + ecx*8]
mov esi, eax
shl edi, 4
mov ecx, 0x24
add edi, 0x1027319c
rep movsd dword es:[edi], dword [esi]
add eax, 0x90
cmp eax, 0x10489b88
jl 0x10017610
mov eax, 0x10489b88
mov ecx, 0x47
lea edi, [ebp - 0x158]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x158]
cmp ecx, 0x13
ja 0x10017682
imul edi, ecx, 0x11c
mov esi, eax
mov ecx, 0x47
add edi, 0x1027df94
rep movsd dword es:[edi], dword [esi]
add eax, 0x11c
cmp eax, 0x1048b1b8
jl 0x10017653
mov eax, dword [0x114ec1f8]
mov ecx, 0x32
mov esi, 0x1048b1b8
mov edi, 0x1027f5cc
rep movsd dword es:[edi], dword [esi]
mov edx, 0x1048b280
nop dword [eax]
cmp eax, 0x3e7
ja 0x100176ee
movq xmm0, qword [edx]
lea ecx, [eax*8]
sub ecx, eax
mov eax, dword [edx + 8]
movq qword [ecx*2 + 0x114e8b48], xmm0
mov dword [ecx*2 + 0x114e8b50], eax
mov ax, word [edx + 0xc]
mov word [ecx*2 + 0x114e8b54], ax
mov eax, dword [0x114ec1f8]
inc eax
mov dword [0x114ec1f8], eax
add edx, 0xe
cmp edx, 0x1048e930
jl 0x100176b0
mov ecx, dword [0x114ec9d0]
mov edx, 0x1048e930
mov eax, dword [edx]
cmp ecx, 0x1f3
ja 0x10017722
mov dword [ecx*4 + 0x114ec200], eax
mov ecx, dword [0x114ec9d0]
inc ecx
mov dword [0x114ec9d0], ecx
add edx, 4
cmp edx, 0x1048f100
jl 0x10017704
mov edx, 0x1048f100
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x178], eax
mov eax, dword [edx]
cmp eax, 0x1f3
ja 0x1001775c
movups xmm0, xmmword [edx]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x10]
movups xmmword [ecx*4 + 0x1021755c], xmm0
mov dword [ecx*4 + 0x1021756c], eax
add edx, 0x14
cmp edx, 0x10491810
jl 0x10017732
push 0x10491810
push 1
call fcn.10047040
push 0x10494ba0
push 2
call fcn.10047040
mov edx, 0x10497f30
nop dword [eax]
nop dword [eax + eax]
mov eax, dword [edx + 0x18]
movq xmm0, qword [edx + 0x10]
mov dword [ebp - 0x178], eax
mov eax, dword [edx]
movq qword [ebp - 0x180], xmm0
cmp eax, 0x63
ja 0x100177d9
movups xmm0, xmmword [edx]
lea ecx, [eax*8]
sub ecx, eax
mov eax, dword [edx + 0x18]
movups xmmword [ecx*4 + 0x10242e3c], xmm0
movq xmm0, qword [edx + 0x10]
movq qword [ecx*4 + 0x10242e4c], xmm0
mov dword [ecx*4 + 0x10242e54], eax
add edx, 0x1c
cmp edx, 0x10498a20
jl 0x10017790
mov eax, 0x10498a20
nop dword [eax]
mov ecx, 0x21
lea edi, [ebp - 0xc0]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc0]
cmp ecx, 0x63
ja 0x1001781f
imul edi, ecx, 0x84
mov esi, eax
mov ecx, 0x21
add edi, 0x101f0364
rep movsd dword es:[edi], dword [esi]
add eax, 0x84
cmp eax, 0x1049bdb0
jl 0x100177f0
mov eax, 0x1049bdb0
mov ecx, 0x21
lea edi, [ebp - 0xc0]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc0]
cmp ecx, 0x63
ja 0x1001785f
imul edi, ecx, 0x84
mov esi, eax
mov ecx, 0x21
add edi, 0x101f36f4
rep movsd dword es:[edi], dword [esi]
add eax, 0x84
cmp eax, 0x1049f140
jl 0x10017830
mov eax, 0x1049f140
mov ecx, 0x21
lea edi, [ebp - 0xc0]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc0]
cmp ecx, 0x63
ja 0x1001789f
imul edi, ecx, 0x84
mov esi, eax
mov ecx, 0x21
add edi, 0x101f6a84
rep movsd dword es:[edi], dword [esi]
add eax, 0x84
cmp eax, 0x104a24d0
jl 0x10017870
mov eax, 0x10219c74
mov dword [eax], 0xffffffff
add eax, 0x108
cmp eax, 0x1023a014
jl 0x100178b0
mov ecx, dword [0x1023a014]
mov eax, 0x104a24d0
mov dword [ebp - 0x1bc], eax
nop dword [eax]
nop word [eax + eax]
movups xmm0, xmmword [eax + 0x10]
movups xmm1, xmmword [eax]
movups xmmword [ebp - 0x1a0], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [ebp - 0x1b0], xmm1
movups xmmword [ebp - 0x190], xmm0
movq xmm0, qword [eax + 0x30]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x178], eax
movd eax, xmm1
movq qword [ebp - 0x180], xmm0
cmp eax, 0x1f3
ja 0x1001798a
mov ax, word [ebp - 0x1ac]
mov word [ebp - 0x144], ax
mov eax, dword [ebp - 0x1ac]
shr eax, 0x10
mov byte [ebp - 0x142], al
lea eax, [ebp - 0x1a9]
push eax
lea eax, [ebp - 0x141]
mov dword [ebp - 0x148], ecx
push str.DataSound_s.wav
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
imul edi, dword [ebp - 0x1b0], 0x108
lea esi, [ebp - 0x148]
mov ecx, 0x42
add esp, 0xc
add edi, 0x10219c74
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x1023a014]
inc ecx
mov dword [0x1023a014], ecx
mov eax, dword [ebp - 0x1bc]
add eax, 0x3c
mov dword [ebp - 0x1bc], eax
cmp eax, 0x104a9a00
jl 0x100178e0
mov edx, 0x104a9a00
nop dword [eax]
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x178], eax
mov eax, dword [edx]
cmp eax, 0xc7
ja 0x100179da
movups xmm0, xmmword [edx]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x10]
movups xmmword [ecx*4 + 0x114f04a0], xmm0
mov dword [ecx*4 + 0x114f04b0], eax
add edx, 0x14
cmp edx, 0x104aa9a0
jl 0x100179b0
mov ecx, 0x104aa9a0
nop word [eax + eax]
movups xmm0, xmmword [ecx + 0x10]
mov edx, dword [ecx]
movups xmmword [ebp - 0x19c], xmm0
movups xmm0, xmmword [ecx + 0x20]
movups xmmword [ebp - 0x18c], xmm0
movq xmm0, qword [ecx + 0x30]
movq qword [ebp - 0x17c], xmm0
cmp edx, 0x18f
ja 0x10017a57
movups xmm0, xmmword [ecx]
lea eax, [edx*8]
sub eax, edx
movups xmmword [eax*8 + 0x10204624], xmm0
movups xmm0, xmmword [ecx + 0x10]
movups xmmword [eax*8 + 0x10204634], xmm0
movups xmm0, xmmword [ecx + 0x20]
movups xmmword [eax*8 + 0x10204644], xmm0
movq xmm0, qword [ecx + 0x30]
movq qword [eax*8 + 0x10204654], xmm0
add ecx, 0x38
cmp ecx, 0x104b0120
jl 0x100179f0
mov ecx, dword [0x102df9e0]
mov eax, 0x104b0120
mov dword [ebp - 0x1bc], eax
mov dword [ebp - 0x1b4], ecx
nop dword [eax]
mov esi, dword [eax]
test esi, esi
js 0x10017bf2
cmp esi, 0x3e8
jge 0x10017bf2
movups xmm0, xmmword [eax]
mov edx, dword [ecx + 4]
xor edi, edi
mov dword [ebp - 0x1b8], edx
movups xmmword [ebp - 0x1f8], xmm0
mov dword [ebp - 0x1dc], ecx
cmp byte [edx + 0xd], 0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [ebp - 0x30], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [ebp - 0x220], xmm0
movq xmm0, qword [eax + 0x30]
movq qword [ebp - 0x170], xmm0
jne 0x10017b1b
mov eax, edx
nop dword [eax]
mov edx, dword [eax + 0x10]
mov dword [ebp - 0x1b8], eax
cmp edx, esi
jge 0x10017af2
mov eax, dword [eax + 8]
jmp 0x10017afa
mov dword [ebp - 0x1dc], eax
mov eax, dword [eax]
xor ecx, ecx
cmp edx, esi
setge cl
cmp byte [eax + 0xd], 0
mov dword [ebp - 0x1c0], ecx
je 0x10017ae0
mov eax, dword [ebp - 0x1bc]
mov edi, ecx
mov ecx, dword [ebp - 0x1dc]
cmp byte [ecx + 0xd], 0
jne 0x10017b2a
cmp esi, dword [ecx + 0x10]
jge 0x10017bd8
cmp dword [0x102df9e4], 0x35e50d7
je 0x10018210
mov dword [ebp - 0x1d0], 0x102df9e0
mov dword [ebp - 4], 1
push 0x4c
mov dword [ebp - 0x1cc], 0
call fcn.100d22ee
mov ecx, dword [ebp - 0x1b4]
add esp, 4
mov dword [ebp - 4], 0xffffffff
movups xmm0, xmmword [ebp - 0x1f8]
mov dword [eax + 0x10], esi
push eax
movups xmmword [eax + 0x14], xmm0
push edi
movups xmm0, xmmword [ebp - 0x30]
mov dword [ebp - 0x1cc], 0
push dword [ebp - 0x1b8]
movups xmmword [eax + 0x24], xmm0
movups xmm0, xmmword [ebp - 0x220]
movups xmmword [eax + 0x34], xmm0
movq xmm0, qword [ebp - 0x170]
movq qword [eax + 0x44], xmm0
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov ecx, 0x102df9e0
mov word [eax + 0xc], 0
call fcn.10011ae0
mov ecx, dword [0x102df9e0]
mov eax, dword [ebp - 0x1bc]
mov dword [ebp - 0x1b4], ecx
jmp 0x10017bde
mov ecx, dword [ebp - 0x1b4]
add eax, 0x38
mov dword [ebp - 0x1bc], eax
cmp eax, 0x104bdbe0
jl 0x10017a80
mov edx, 0x104bdbe0
mov dword [ebp - 0x1b8], edx
nop dword [eax]
cmp dword [edx], 0x100
ja 0x10017c52
mov eax, dword [edx + 4]
lea edi, [ebp - 0x15c]
mov dword [ebp - 0x160], eax
mov esi, edx
lea eax, [ebp - 0x160]
mov ecx, 0x48
push eax
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x16c]
mov ecx, 0x114d8a68
push eax
call fcn.10011970
mov edx, dword [ebp - 0x1b8]
add edx, 0x120
mov dword [ebp - 0x1b8], edx
cmp edx, 0x104cfbe0
jl 0x10017c00
mov edx, 0x104cfbe0
mov dword [ebp - 0x1b8], edx
nop dword [eax]
cmp dword [edx], 0x100
ja 0x10017cb2
mov eax, dword [edx + 4]
lea edi, [ebp - 0x15c]
mov dword [ebp - 0x160], eax
mov esi, edx
lea eax, [ebp - 0x160]
mov ecx, 0x48
push eax
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x16c]
mov ecx, 0x114d8a70
push eax
call fcn.10011970
mov edx, dword [ebp - 0x1b8]
add edx, 0x120
mov dword [ebp - 0x1b8], edx
cmp edx, 0x104e1be0
jl 0x10017c60
mov edx, 0x104e1be0
mov dword [ebp - 0x1b8], edx
nop dword [eax]
cmp dword [edx], 0x100
ja 0x10017d12
mov eax, dword [edx + 4]
lea edi, [ebp - 0x15c]
mov dword [ebp - 0x160], eax
mov esi, edx
lea eax, [ebp - 0x160]
mov ecx, 0x48
push eax
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x16c]
mov ecx, 0x114d8a78
push eax
call fcn.10011970
mov edx, dword [ebp - 0x1b8]
add edx, 0x120
mov dword [ebp - 0x1b8], edx
cmp edx, 0x104f3be0
jl 0x10017cc0
mov ecx, 0x104f3be0
nop word [eax + eax]
movups xmm0, xmmword [ecx + 0x10]
mov eax, dword [ecx]
movups xmmword [ebp - 0x74], xmm0
movups xmm0, xmmword [ecx + 0x20]
movups xmmword [ebp - 0x64], xmm0
movups xmm0, xmmword [ecx + 0x30]
movups xmmword [ebp - 0x54], xmm0
movq xmm0, qword [ecx + 0x40]
movq qword [ebp - 0x44], xmm0
cmp eax, 0x31
ja 0x10017d89
movups xmm0, xmmword [ecx]
lea eax, [eax + eax*8]
movups xmmword [eax*8 + 0x101bd84c], xmm0
movups xmm0, xmmword [ecx + 0x10]
movups xmmword [eax*8 + 0x101bd85c], xmm0
movups xmm0, xmmword [ecx + 0x20]
movups xmmword [eax*8 + 0x101bd86c], xmm0
movups xmm0, xmmword [ecx + 0x30]
movups xmmword [eax*8 + 0x101bd87c], xmm0
movq xmm0, qword [ecx + 0x40]
movq qword [eax*8 + 0x101bd88c], xmm0
add ecx, 0x48
cmp ecx, 0x104f49f0
jl 0x10017d20
push 0x10062560
push 0x520d60
push 0xe9
call fcn.100d0480
mov ecx, dword [0x1027f824]
add esp, 0xc
mov eax, dword [0x1027f828]
cmp ecx, eax
je 0x10017dc1
mov eax, ecx
mov dword [0x1027f828], eax
mov esi, 0x104f49f0
nop word [eax + eax]
mov ecx, dword [esi]
mov edx, dword [esi + 4]
mov dword [ebp - 0x1d0], ecx
mov dword [ebp - 0x1cc], edx
test ecx, ecx
js 0x10017e1a
cmp ecx, 0x32
jge 0x10017e1a
cmp eax, dword [0x1027f82c]
je 0x10017e03
mov dword [eax], edx
mov eax, dword [0x1027f828]
add eax, 4
mov dword [0x1027f828], eax
jmp 0x10017e1a
lea ecx, [ebp - 0x1cc]
push ecx
push eax
mov ecx, 0x1027f824
call fcn.1004bfe0
mov eax, dword [0x1027f828]
add esi, 8
cmp esi, 0x104f4b80
jl 0x10017dd0
push 0x104f4b80
call fcn.10044d00
mov edx, 0x104f4ce8
movq xmm0, qword [edx]
movq qword [ebp - 0x170], xmm0
mov eax, dword [ebp - 0x170]
cmp eax, 0x31
ja 0x10017e65
lea ecx, [eax + eax*2]
movq xmm0, xmm0
mov eax, dword [edx + 8]
movq qword [ecx*4 + 0x1011acf4], xmm0
mov dword [ecx*4 + 0x1011acfc], eax
add edx, 0xc
cmp edx, 0x104f4f40
jl 0x10017e34
mov ecx, dword [0x102e0414]
mov esi, 0x104f4f40
mov dword [ebp - 0x1b4], ecx
movups xmm0, xmmword [esi + 0x10]
mov eax, dword [esi + 0x38]
movups xmm1, xmmword [esi]
mov dword [ebp - 0x178], eax
movups xmmword [ebp - 0x1a0], xmm0
movups xmm0, xmmword [esi + 0x20]
movd eax, xmm1
movups xmmword [ebp - 0x190], xmm0
movq xmm0, qword [esi + 0x30]
movq qword [ebp - 0x180], xmm0
movups xmmword [ebp - 0x1b0], xmm1
cmp eax, 0x31
ja 0x10018044
lea eax, [ebp - 0x1ac]
mov ecx, 0x102e0414
push eax
lea eax, [ebp - 0x20c]
push eax
call fcn.10011a90
mov eax, dword [ebp - 0x204]
mov edi, dword [ebp - 0x1ac]
cmp byte [eax + 0xd], 0
jne 0x10017efb
cmp edi, dword [eax + 0x10]
jl 0x10017efb
mov ecx, dword [ebp - 0x1b4]
jmp 0x10017f03
mov ecx, dword [ebp - 0x1b4]
mov eax, ecx
test edi, edi
jle 0x10018044
cmp eax, ecx
jne 0x10018044
movups xmm0, xmmword [esi]
mov eax, dword [esi + 0x38]
mov ecx, 0x102e0414
mov dword [ebp - 0x1c0], eax
movups xmmword [ebp - 0x7c], xmm0
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x80]
movups xmmword [ebp - 0x1f8], xmm0
push eax
movups xmm0, xmmword [esi + 0x10]
lea eax, [ebp - 0x21c]
mov dword [ebp - 0x80], edi
push eax
movups xmmword [ebp - 0x6c], xmm0
movups xmmword [ebp - 0x30], xmm0
movups xmm0, xmmword [esi + 0x20]
movups xmmword [ebp - 0x5c], xmm0
movups xmmword [ebp - 0x188], xmm0
movq xmm0, qword [esi + 0x30]
movq qword [ebp - 0x170], xmm0
movq qword [ebp - 0x4c], xmm0
call fcn.10011a90
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x1e8], xmm0
cmp byte [eax + 0xd], 0
jne 0x10017f90
cmp edi, dword [eax + 0x10]
jge 0x10018044
cmp dword [0x102e0418], 0x3333333
je 0x10018210
mov dword [ebp - 0x1d0], 0x102e0414
mov dword [ebp - 4], 2
push 0x50
mov dword [ebp - 0x1cc], 0
call fcn.100d22ee
mov dword [ebp - 4], 0xffffffff
add esp, 4
movups xmm0, xmmword [ebp - 0x1f8]
mov ecx, dword [ebp - 0x1c0]
mov dword [eax + 0x10], edi
movups xmmword [eax + 0x14], xmm0
push eax
movups xmm0, xmmword [ebp - 0x30]
mov dword [ebp - 0x1cc], 0
push dword [ebp - 0x1e4]
movups xmmword [eax + 0x24], xmm0
movups xmm0, xmmword [ebp - 0x188]
push dword [ebp - 0x1e8]
movups xmmword [eax + 0x34], xmm0
movq xmm0, qword [ebp - 0x170]
movq qword [eax + 0x44], xmm0
mov dword [eax + 0x4c], ecx
mov ecx, dword [ebp - 0x1b4]
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov ecx, 0x102e0414
mov word [eax + 0xc], 0
call fcn.10011ae0
mov ecx, dword [0x102e0414]
mov dword [ebp - 0x1b4], ecx
add esi, 0x3c
cmp esi, 0x104f5af8
jl 0x10017e81
mov edi, 0x104f5af8
nop dword [eax + eax]
movups xmm1, xmmword [edi]
movq xmm0, qword [edi + 0x10]
movd eax, xmm1
movups xmmword [ebp - 0x200], xmm1
movq qword [ebp - 0x1f0], xmm0
cmp eax, 0x1387
ja 0x100181c4
mov eax, dword [ebp - 0x1f8]
cmp eax, 0xe
ja 0x100180a1
cmp byte [eax + 0x114ed000], 0
jne 0x100180a1
mov byte [eax + 0x114ed000], 1
lea eax, [ebp - 0x1fc]
mov ecx, 0x114ecff8
push eax
lea eax, [ebp - 0x20c]
push eax
call fcn.10011a90
mov eax, dword [ebp - 0x204]
mov esi, dword [ebp - 0x1fc]
cmp byte [eax + 0xd], 0
jne 0x100180dc
cmp esi, dword [eax + 0x10]
jl 0x100180dc
cmp eax, dword [0x114ecff8]
jne 0x100181c4
movups xmm0, xmmword [edi]
lea eax, [ebp - 0x38]
mov dword [ebp - 0x38], esi
push eax
movups xmmword [ebp - 0x34], xmm0
lea eax, [ebp - 0x21c]
mov ecx, 0x114ecff8
movups xmmword [ebp - 0x188], xmm0
push eax
movq xmm0, qword [edi + 0x10]
movq qword [ebp - 0x170], xmm0
movq qword [ebp - 0x24], xmm0
call fcn.10011a90
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x1e8], xmm0
cmp byte [eax + 0xd], 0
jne 0x10018132
cmp esi, dword [eax + 0x10]
jge 0x100181c4
cmp dword [0x114ecffc], 0x5d1745d
je 0x10018210
mov esi, dword [0x114ecff8]
mov dword [ebp - 0x1d0], 0x114ecff8
mov dword [ebp - 4], 3
push 0x2c
mov dword [ebp - 0x1cc], 0
call fcn.100d22ee
mov dword [ebp - 4], 0xffffffff
add esp, 4
movups xmm0, xmmword [ebp - 0x188]
mov ecx, dword [ebp - 0x1fc]
mov dword [eax + 0x10], ecx
mov ecx, 0x114ecff8
movups xmmword [eax + 0x14], xmm0
push eax
movq xmm0, qword [ebp - 0x170]
push dword [ebp - 0x1e4]
movq qword [eax + 0x24], xmm0
push dword [ebp - 0x1e8]
mov dword [eax], esi
mov dword [eax + 4], esi
mov dword [eax + 8], esi
mov word [eax + 0xc], 0
mov dword [ebp - 0x1cc], 0
call fcn.10011ae0
add edi, 0x18
cmp edi, 0x10512fb8
jl 0x10018060
push 0
push ecx
push str.DataEnc1.dat
call fcn.100b5610
push 1
push ecx
push str.DataDec2.dat
call fcn.100b5610
call fcn.10068940
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.100d22e0
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.10011cf0
int3