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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x5a4
mov esi, dword [ebp + 0x28]
mov ecx, dword [ebp + 0x1c]
mov ebx, dword [ebp + 0xc]
mov eax, dword [0x103c2010]
xor eax, ebp
mov dword [ebp - 0x10], eax
call fcn.100f1513
mov edi, eax
mov ecx, ebx
call fcn.100f1513
mov edx, edi
imul edx, esi
mov ecx, eax
imul ecx, esi
or ecx, edx
js 0x100f0a6d
mov esi, dword [ebp + 0x24]
mov ebx, dword [ebp + 0x14]
mov edx, dword [ebp + 8]
test ebx, ebx
mov ecx, 0x10357790
cmove ebx, ecx
mov dword [ebp - 0x5a0], ebx
test esi, esi
cmove esi, ecx
cmp dword [ebp + 0x18], edx
jne 0x100f0a86
cmp edi, eax
je 0x100f0a86
xor ebx, ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.102f4c53
mov eax, ebx
add esp, 0x5a4
pop esi
pop edi
pop ebx
pop ebp
ret
mov edx, dword [ebp + 0xc]
mov ecx, edx
and ecx, 0xfffffffe
xor ebx, ebx
cmp ecx, 4
jne 0x100f0a9b
cmp dword [ebp + 0x2c], 0
je 0x100f0a6f
pcmpeqd xmm0, xmm0
movdqu xmmword [ebp - 0x60], xmm0
movdqu xmmword [ebp - 0x70], xmm0
movdqu xmmword [ebp - 0x80], xmm0
movdqu xmmword [ebp - 0x90], xmm0
movdqu xmmword [ebp - 0xa0], xmm0
movdqu xmmword [ebp - 0xb0], xmm0
movdqu xmmword [ebp - 0xc0], xmm0
movdqu xmmword [ebp - 0xd0], xmm0
movdqu xmmword [ebp - 0xe0], xmm0
movdqu xmmword [ebp - 0xf0], xmm0
movdqu xmmword [ebp - 0x100], xmm0
movdqu xmmword [ebp - 0x110], xmm0
movdqu xmmword [ebp - 0x120], xmm0
movdqu xmmword [ebp - 0x130], xmm0
movdqu xmmword [ebp - 0x140], xmm0
movdqu xmmword [ebp - 0x150], xmm0
movdqu xmmword [ebp - 0x17c], xmm0
movdqu xmmword [ebp - 0x19c], xmm0
movdqu xmmword [ebp - 0x160], xmm0
movdqu xmmword [ebp - 0x16c], xmm0
movdqu xmmword [ebp - 0x18c], xmm0
movdqu xmmword [ebp - 0x1ac], xmm0
mov dword [ebp - 0x170], ebx
mov dword [ebp - 0x190], ebx
mov dword [ebp - 0x1b0], ebx
movdqu xmmword [ebp - 0x1c4], xmm0
movdqu xmmword [ebp - 0x1d4], xmm0
mov dword [ebp - 0x1b4], 0xffffffff
sar edx, 1
cmp edx, 0x13
ja case.default.0x100f0b83
mov dword [ebp - 0x5b0], edi
jmp dword [edx*4 + 0x10358194]
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 0xd
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 0xe
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 0
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 1
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 2
lea ecx, [ebp - 0x14c]
mov dword [ebp - 0x598], ecx
mov edx, dword [ebp + 0x2c]
mov dword [ecx - 4], edx
jmp 0x100f0d61
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 4
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 3
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 5
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 6
jmp 0x100f0d55
movdqa xmm0, xmmword [0x10357270]
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0x59c], ecx
movdqu xmmword [ecx - 0x10], xmm0
mov ecx, 0x103577ac
lea edx, [ebp - 0x144]
mov dword [edx - 0xc], ecx
mov dword [edx - 8], ecx
mov dword [ebp - 0x598], edx
mov dword [edx - 4], ecx
jmp 0x100f0d61
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 7
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 9
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 0xa
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 0xb
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 0xc
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 0xf
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 0x10
jmp 0x100f0d55
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0x59c], ecx
mov dword [ecx - 4], 8
lea ecx, [ebp - 0x150]
mov dword [ebp - 0x598], ecx
mov ebx, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0xc]
cmp ecx, 0x1c
je 0x100f0d71
cmp ecx, 0x1a
jne 0x100f0d86
mov ecx, dword [ebp - 0x59c]
mov dword [ecx], 0x12
add ecx, 4
mov dword [ebp - 0x59c], ecx
mov ecx, dword [ebp + 0xc]
test cl, 1
mov dword [ebp - 0x5ac], eax
je 0x100f0da9
mov eax, dword [ebp - 0x59c]
mov dword [eax], 0x11
add eax, 4
mov dword [ebp - 0x59c], eax
lea edi, [ebp - 0x594]
push 0x3c0
push 0xff
push edi
call fcn.102f7d80
add esp, 0xc
sar ebx, 1
cmp ebx, 1
mov dword [ebp - 0x5a4], ebx
jne 0x100f0e17
push 0x3c0
push esi
push edi
call fcn.102f7800
add esp, 0xc
mov byte [ebp - 0x51c], 1
movups xmm0, xmmword [0x10357bcc]
movups xmmword [ebp - 0x518], xmm0
movdqu xmm0, xmmword [0x10357bdc]
movdqu xmmword [ebp - 0x508], xmm0
mov dword [ebp - 0x4f8], 0x3f800000
mov ebx, dword [ebp - 0x59c]
mov esi, edi
jmp 0x100f0e1d
mov ebx, dword [ebp - 0x59c]
mov ecx, dword [ebp - 0x5a0]
mov eax, 0x13
cmp dword [ecx + 8], 0x434d594b
je 0x100f0e49
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x100f0e44
cmp eax, 2
jne 0x100f0e4e
mov eax, 0x16
jmp 0x100f0e49
mov eax, 0x14
mov dword [ebx], eax
add ebx, 4
cmp esi, ecx
mov dword [ebp - 0x59c], esi
je 0x100f0f7f
cmp byte [esi + 0x22c], 0
je 0x100f0f86
cmp byte [ecx + 0xa0], 0
je 0x100f1024
lea eax, [ecx + 0xa4]
mov dword [ebp - 0x5a8], eax
cmp dword [ecx + 0xa4], 0
je 0x100f0ef7
mov edi, ebx
jle 0x100f0ec8
lea ebx, [ecx + 0xa8]
xor esi, esi
mov ecx, ebx
mov edx, esi
call fcn.100f155c
test edx, edx
je 0x100f0eba
mov dword [edi], eax
add edi, 4
mov eax, dword [ebp - 0x598]
mov dword [eax], edx
add eax, 4
mov dword [ebp - 0x598], eax
inc esi
add ebx, 0x20
mov eax, dword [ebp - 0x5a8]
cmp esi, dword [eax]
jl 0x100f0e97
mov ebx, edi
mov dword [edi], 0x12
mov dword [edi + 4], 0x2f
add ebx, 8
mov eax, dword [ebp - 0x598]
mov ecx, dword [ebp - 0x5a8]
mov dword [eax], ecx
add eax, 4
mov dword [ebp - 0x598], eax
mov ecx, dword [ebp - 0x5a0]
cmp dword [ecx + 0x134], 3
jne 0x100f107c
mov edi, ebx
lea esi, [ecx + 0x138]
xor ebx, ebx
mov ecx, esi
mov edx, ebx
call fcn.100f155c
test edx, edx
je 0x100f0f31
mov dword [edi], eax
add edi, 4
mov eax, dword [ebp - 0x598]
mov dword [eax], edx
add eax, 4
mov dword [ebp - 0x598], eax
inc ebx
add esi, 0x20
cmp ebx, 3
jne 0x100f0f0e
mov eax, dword [ebp - 0x5a0]
lea esi, [eax + 0x198]
push 0x30
push esi
push 0x10358078
call fcn.102f617d
add esp, 0xc
test eax, eax
je 0x100f1074
mov ebx, edi
mov dword [edi], 0x18
add ebx, 4
mov eax, dword [ebp - 0x598]
mov dword [eax], esi
add eax, 4
mov dword [ebp - 0x598], eax
jmp 0x100f1076
mov edi, ebx
jmp 0x100f130f
cmp byte [esi + 0x14], 0
je case.default.0x100f0b83
cmp byte [esi + 0x78], 0
je case.default.0x100f0b83
cmp dword [esi + 0x18], 0
jne case.default.0x100f0b83
cmp dword [esi + 0x38], 0
jne case.default.0x100f0b83
cmp dword [esi + 0x58], 0
jne case.default.0x100f0b83
lea eax, [ebp - 0x1ac]
lea ecx, [esi + 0x1c]
push eax
push ecx
call fcn.100ef79c
add esp, 8
test al, al
je case.default.0x100f0b83
lea eax, [ebp - 0x18c]
lea ecx, [esi + 0x3c]
push eax
push ecx
call fcn.100ef79c
add esp, 8
test al, al
je case.default.0x100f0b83
lea eax, [ebp - 0x16c]
lea ecx, [esi + 0x5c]
push eax
push ecx
call fcn.100ef79c
add esp, 8
test al, al
je case.default.0x100f0b83
lea eax, [esi + 0x7c]
lea ecx, [ebp - 0x1d4]
push ecx
push eax
call fcn.100ef50a
add esp, 8
test al, al
mov ecx, dword [ebp - 0x5a0]
jne 0x100f0e69
jmp case.default.0x100f0b83
cmp byte [ecx + 0x14], 0
je case.default.0x100f0b83
xor edx, edx
cmp byte [ecx + 0x78], 0
je case.default.0x100f0b83
lea esi, [ecx + 0x18]
mov ecx, esi
mov edi, edx
call fcn.100f155c
test edx, edx
je 0x100f1058
mov dword [ebx], eax
add ebx, 4
mov eax, dword [ebp - 0x598]
mov dword [eax], edx
add eax, 4
mov dword [ebp - 0x598], eax
mov edx, edi
inc edx
add esi, 0x20
cmp edx, 3
jne 0x100f1035
jmp 0x100f10d9
mov dword [ebp - 0x5a0], 0
jmp case.0x100f1378.2
mov ebx, edi
mov ecx, dword [ebp - 0x5a0]
mov edi, ebx
cmp dword [ecx + 0x1c8], 3
jne 0x100f10bb
lea esi, [ecx + 0x1cc]
xor ebx, ebx
mov ecx, esi
mov edx, ebx
call fcn.100f155c
test edx, edx
je 0x100f10b2
mov dword [edi], eax
add edi, 4
mov eax, dword [ebp - 0x598]
mov dword [eax], edx
add eax, 4
mov dword [ebp - 0x598], eax
inc ebx
add esi, 0x20
cmp ebx, 3
jne 0x100f108f
mov eax, dword [ebp - 0x5a0]
cmp dword [eax + 0xc], 0x4c616220
jne 0x100f10d7
mov ebx, edi
mov dword [edi], 0x19
add ebx, 4
jmp 0x100f10d9
mov ebx, edi
mov ecx, dword [ebp - 0x59c]
cmp byte [ecx + 0x22c], 0
mov edx, dword [ebp - 0x5a0]
mov al, byte [edx + 0xa0]
je 0x100f116f
test al, al
jne 0x100f1115
mov dword [ebx], 0x17
add ebx, 4
add edx, 0x7c
mov eax, dword [ebp - 0x598]
mov dword [eax], edx
add eax, 4
mov dword [ebp - 0x598], eax
cmp dword [ecx + 0xc], 0x4c616220
jne 0x100f1127
mov dword [ebx], 0x1a
add ebx, 4
cmp dword [ecx + 0x230], 3
jne 0x100f1210
mov edi, ebx
lea esi, [ecx + 0x234]
xor ebx, ebx
mov ecx, esi
mov edx, ebx
call fcn.100f155c
test edx, edx
je 0x100f1161
mov dword [edi], eax
add edi, 4
mov eax, dword [ebp - 0x598]
mov dword [eax], edx
add eax, 4
mov dword [ebp - 0x598], eax
inc ebx
add esi, 0x20
cmp ebx, 3
jne 0x100f113e
jmp 0x100f1212
mov edi, ebx
add edx, 0x7c
test al, al
mov esi, 0x103580d8
cmove esi, edx
lea eax, [ecx + 0x7c]
push 0x24
push esi
push eax
call fcn.102f617d
add esp, 0xc
test eax, eax
je 0x100f11d7
lea eax, [ebp - 0x1d4]
lea ebx, [ebp - 0x50]
push esi
mov esi, eax
push eax
push ebx
call fcn.100ef1d5
add esp, 0xc
mov eax, dword [ebx + 0x20]
mov dword [esi + 0x20], eax
movdqu xmm0, xmmword [ebx]
movups xmm1, xmmword [ebx + 0x10]
movups xmmword [esi + 0x10], xmm1
movdqu xmmword [esi], xmm0
mov dword [edi], 0x17
add edi, 4
mov eax, dword [ebp - 0x598]
mov dword [eax], esi
add eax, 4
mov dword [ebp - 0x598], eax
xor esi, esi
lea ebx, [ebp - 0x1b0]
mov ecx, ebx
mov edx, esi
call fcn.100f155c
test edx, edx
je 0x100f1202
mov dword [edi], eax
add edi, 4
mov eax, dword [ebp - 0x598]
mov dword [eax], edx
add eax, 4
mov dword [ebp - 0x598], eax
inc esi
add ebx, 0x20
cmp esi, 3
jne 0x100f11df
jmp 0x100f130f
mov edi, ebx
mov eax, dword [ebp - 0x59c]
cmp dword [eax + 0x294], 3
jne 0x100f1293
lea esi, [eax + 0x298]
push 0x30
push esi
push 0x103580a8
call fcn.102f617d
add esp, 0xc
test eax, eax
je 0x100f1259
mov eax, edi
mov dword [edi], 0x18
add eax, 4
mov edi, eax
mov eax, dword [ebp - 0x598]
mov dword [eax], esi
add eax, 4
mov dword [ebp - 0x598], eax
mov eax, dword [ebp - 0x59c]
lea esi, [eax + 0x2c8]
xor ebx, ebx
mov ecx, esi
mov edx, ebx
call fcn.100f155c
test edx, edx
je 0x100f128a
mov dword [edi], eax
add edi, 4
mov eax, dword [ebp - 0x598]
mov dword [eax], edx
add eax, 4
mov dword [ebp - 0x598], eax
inc ebx
add esi, 0x20
cmp ebx, 3
jne 0x100f1267
mov edx, dword [ebp - 0x59c]
cmp dword [edx + 0x328], 0
je 0x100f130f
lea eax, [edx + 0x230]
mov dword [edi], 0x12
mov dword [edi + 4], 0x30
add edi, 8
mov ecx, dword [ebp - 0x598]
mov dword [ecx], eax
add ecx, 4
mov dword [ebp - 0x598], ecx
cmp dword [edx + 0x328], 0
jle 0x100f130f
lea esi, [edx + 0x338]
xor ebx, ebx
mov ecx, esi
mov edx, ebx
call fcn.100f155c
test edx, edx
je 0x100f12fd
mov dword [edi], eax
add edi, 4
mov eax, dword [ebp - 0x598]
mov dword [eax], edx
add eax, 4
mov dword [ebp - 0x598], eax
inc ebx
add esi, 0x20
mov eax, dword [ebp - 0x59c]
cmp ebx, dword [eax + 0x328]
jl 0x100f12da
mov ecx, dword [ebp + 0x1c]
cmp ecx, 0x1d
jg 0x100f1320
mov dword [edi], 0x12
add edi, 4
mov edx, dword [ebp - 0x59c]
mov eax, 0x13
cmp dword [edx + 8], 0x434d594b
je 0x100f134c
mov eax, dword [ebp + 0x20]
test eax, eax
je 0x100f1347
cmp eax, 2
jne 0x100f1351
mov eax, 0x15
jmp 0x100f134c
mov eax, 0x14
mov dword [edi], eax
add edi, 4
test cl, 1
je 0x100f135f
mov dword [edi], 0x11
add edi, 4
mov eax, dword [ebp - 0x5a4]
mov dword [ebp - 0x5a0], 0
cmp eax, 0x13
ja case.0x100f1378.2
jmp dword [eax*4 + 0x103581e4]
mov dword [edi], 0x3d
jmp 0x100f143c
mov dword [edi], 0x3e
jmp 0x100f143c
mov dword [edi], 0x31
jmp 0x100f143c
mov dword [edi], 0x32
jmp 0x100f143c
mov dword [edi], 0x34
jmp 0x100f143c
mov dword [edi], 0x33
jmp 0x100f143c
mov dword [edi], 0x35
jmp 0x100f143c
mov dword [edi], 0x36
jmp 0x100f143c
mov dword [edi], 0x1b
mov eax, 0x10357f10
mov ecx, dword [ebp - 0x598]
mov dword [ecx], eax
mov dword [edi + 4], 0x1c
mov dword [ecx + 4], eax
mov dword [edi + 8], 0x1d
mov dword [ecx + 8], eax
mov dword [edi + 0xc], 0x36
jmp 0x100f143c
mov dword [edi], 0x37
jmp 0x100f143c
mov dword [edi], 0x38
jmp 0x100f143c
mov dword [edi], 0x39
jmp 0x100f143c
mov dword [edi], 0x3a
jmp 0x100f143c
mov dword [edi], 0x3b
jmp 0x100f143c
mov dword [edi], 0x3f
jmp 0x100f143c
mov dword [edi], 0x40
jmp 0x100f143c
mov dword [edi], 0x3c
xor edi, edi
mov ebx, dword [ebp + 0x28]
cmp ebx, 4
jl 0x100f1472
xor edi, edi
mov esi, ebx
lea ecx, [ebp - 0xd0]
lea edx, [ebp - 0x150]
push edi
push dword [ebp + 0x18]
push dword [ebp + 8]
call fcn.100f1e25
add esp, 0xc
add edi, 4
lea ebx, [esi - 4]
cmp esi, 7
mov esi, ebx
ja 0x100f144a
mov al, 1
mov dword [ebp - 0x5a0], eax
test ebx, ebx
jle case.0x100f1378.2
mov esi, ebx
mov ecx, dword [ebp - 0x5ac]
imul esi, ecx
lea eax, [esi - 0x40]
neg eax
cmp esi, 0x40
mov edx, 0
cmovae eax, edx
imul ecx, edi
mov edx, dword [ebp + 8]
add edx, ecx
mov dword [ebp - 0x598], edx
lea ecx, [esi + ebp]
add ecx, 0xffffffb0
push eax
xor eax, eax
push eax
push ecx
call fcn.102f7d80
add esp, 0xc
lea eax, [ebp - 0x50]
push esi
push dword [ebp - 0x598]
push eax
mov esi, eax
call fcn.102f7800
add esp, 0xc
lea ecx, [ebp - 0xd0]
lea edx, [ebp - 0x150]
xor eax, eax
push eax
push esi
push esi
call fcn.100f1e25
add esp, 0xc
mov eax, dword [ebp - 0x5b0]
imul edi, eax
mov ecx, dword [ebp + 0x18]
add ecx, edi
imul ebx, eax
push ebx
push esi
push ecx
call fcn.102f7800
add esp, 0xc
mov ebx, dword [ebp - 0x5a0]
jmp 0x100f0a6f