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

Disassembly:
sub esp, 0x64
mov eax, dword [0x10a78b80]
xor eax, esp
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x78]
push ebx
push ebp
mov ebp, dword [esp + 0x84]
movzx eax, byte [eax + 0x10808f08]
push esi
mov esi, dword [esp + 0x74]
mov dword [esp + 0x18], eax
mov bh, byte [eax + eax*2 + 0x10813470]
lea edx, [eax*2 + 0x10813471]
add edx, eax
mov dword [esp + 0x2c], esi
push edi
mov edi, dword [esp + 0x7c]
mov dword [esp + 0x18], edi
mov al, byte [edx]
mov bl, byte [edx + 1]
mov dword [esp + 0x34], ebp
mov byte [esp + 0x28], bh
mov dword [esp + 0x10], edx
mov byte [esp + 0x14], al
mov byte [esp + 0x24], bl
test al, al
je 0x10170e50
cmp dword [esi + 0x5cf34], 0
je 0x10170e31
movzx ecx, byte [esi + 0x6d660]
mov eax, dword [esi]
cmp byte [ecx + eax + 0x100], 3
jne 0x10170e2d
test bl, bl
jg 0x10170e50
mov al, byte [esp + 0x14]
cmp dword [esp + 0x90], 0
je 0x10170e68
test bl, bl
jg 0x10170e70
cmp al, 1
je 0x10170ef8
cmp bh, 0xd
je 0x10170ef4
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
mov ecx, dword [esp + 0x60]
xor ecx, esp
call fcn.105116c0
add esp, 0x64
ret
test bl, bl
jle 0x10170ef4
mov eax, dword [esp + 0x80]
mov bl, byte [eax + 0x10808274]
mov al, byte [eax + 0x1080825c]
cmp al, bl
movzx ecx, bl
movzx edx, al
cmovae edx, ecx
cmp edx, 8
jb 0x10170e50
mov bl, byte [esp + 0x24]
movsx eax, bl
mov al, byte [eax + 0x10813228]
test byte [esi + 0x5ccb0], al
je 0x10170e50
mov al, byte [esi + 0x3abf0]
test al, al
je 0x10170e50
cmp al, 2
je 0x10170e50
cmp byte [esi + 0x3abf1], 0
je 0x10170e50
mov eax, dword [edi + 0x10b0]
push 5
mov eax, dword [eax]
mov al, byte [eax + 0x9f]
and al, 7
movzx eax, al
push eax
lea eax, [esi + 0x3d230]
push eax
call fcn.10075610
add esp, 0xc
test eax, eax
jne 0x10170e50
mov edx, dword [esp + 0x10]
mov al, byte [esp + 0x14]
test al, al
jle 0x10170f1b
test bl, bl
jne 0x10170f1b
mov eax, dword [esp + 0x80]
add eax, 0xfffffffd
cmp eax, 6
ja 0x10170e50
mov al, bh
sub al, 0xd
cmp al, 3
ja 0x10170e50
push edx
push dword [esp + 0x2c]
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [ebp + 4]
push edi
push esi
call fcn.1016b2e0
add esp, 0x1c
cmp eax, 1
je 0x10170e50
xor ecx, ecx
cmp eax, 2
mov eax, dword [ebp]
sete cl
mov dword [eax], ecx
cmp dword [esi + 0x5cf50], 0
jne 0x10170f78
cmp dword [esi + 0x5ceb4], 0
jle 0x10170f78
test bl, bl
jle 0x10170f78
cmp dword [ebp + 0x10], 0
jne 0x10170f78
push dword [ebp + 8]
push esi
call fcn.10162200
add esp, 8
mov dword [ebp + 0x10], 1
mov edi, dword [ebp + 8]
cmp dword [edi + 0xc4], 0
je 0x10170f89
mov eax, dword [ebp + 0x14]
jmp 0x10170f8e
mov eax, 0x1000
cdq
push edx
push eax
mov eax, dword [esp + 0x24]
push dword [edi + eax*8 + 0x13c]
push dword [edi + eax*8 + 0x138]
call fcn.10511b50
shrd eax, edx, 0xc
sar edx, 0xc
cmp dword [edi + 4], edx
jl 0x10170e50
jg 0x10170fc2
cmp dword [edi], eax
jb 0x10170e50
cmp dword [esi + 0x5cf50], 0
jne 0x10170ffa
cmp dword [esi + 0x5ceb4], 0
jle 0x10170ffa
test bl, bl
jle 0x10170ffa
push dword [esp + 0x18]
push dword [esp + 0x28]
push dword [esp + 0x1c]
push dword [esp + 0x34]
push edi
push esi
call fcn.10167210
add esp, 0x18
test eax, eax
jne 0x10170e50
cmp dword [esi + 0x5cebc], 0
je 0x101710cf
test bl, bl
jle 0x101710cf
cmp dword [ebp + 0x1c], 0
jne 0x1017109c
cmp dword [ebp + 0x18], 0x1c
jne 0x101710cf
mov edi, dword [esp + 0x2c]
lea eax, [esp + 0x38]
push 0x10167180
push 8
push 7
movups xmm0, xmmword [edi + 8]
push eax
movups xmmword [esp + 0x48], xmm0
movups xmm0, xmmword [edi + 0x18]
movups xmmword [esp + 0x58], xmm0
movups xmm0, xmmword [edi + 0x28]
movups xmmword [esp + 0x68], xmm0
movq xmm0, qword [edi + 0x38]
movq qword [esp + 0x78], xmm0
call fcn.105265a0
mov eax, dword [esp + 0x48]
add esp, 0x10
mov edx, dword [esp + 0x3c]
cmp eax, 0xffffffff
jne 0x10171078
cmp edx, 0x7fffffff
je 0x1017108e
push 0
push 0x6e
push edx
push eax
call fcn.10511b50
push 0
push 0x64
push edx
push eax
call fcn.10511aa0
mov dword [edi], eax
mov dword [edi + 4], edx
mov dword [ebp + 0x1c], 1
jmp 0x101710a0
mov edi, dword [esp + 0x2c]
movsx eax, byte [esp + 0x14]
mov edx, dword [edi + 4]
mov ecx, dword [edi]
cmp dword [edi + eax*8 + 4], edx
jl 0x101710cf
jg 0x101710b7
cmp dword [edi + eax*8], ecx
jbe 0x101710cf
movsx eax, bl
cmp dword [edi + eax*8 + 4], edx
jg 0x10170e50
jl 0x101710cf
cmp dword [edi + eax*8], ecx
ja 0x10170e50
cmp dword [esi + 0x5cec4], 0
je 0x101710ea
cmp bh, 0x16
je 0x10170e50
cmp bh, 0x15
je 0x10170e50
mov edi, dword [esi + 0x5cec0]
test edi, edi
je 0x1017117a
test bl, bl
jle 0x1017117a
cmp bh, 0x11
je 0x1017117a
cmp bh, 0x12
je 0x1017117a
cmp bh, 0x18
je 0x1017117a
cmp bh, 0x17
je 0x1017117a
cmp edi, 3
jge 0x10170e50
mov eax, dword [esp + 0x18]
xorps xmm0, xmm0
movlpd qword [esp + 0x1c], xmm0
cmp byte [eax + 0x10b5], 0
je 0x1017114a
lea ecx, [esp + 0x1c]
push ecx
push dword [esp + 0x14]
push dword [eax + 0x10b8]
call fcn.1016bb20
mov eax, dword [esp + 0x24]
add esp, 0xc
cmp byte [eax + 0x10b4], 0
je 0x1017116a
lea ecx, [esp + 0x1c]
push ecx
push dword [esp + 0x14]
push dword [eax + 0x10bc]
call fcn.1016bb20
add esp, 0xc
mov eax, dword [esp + 0x1c]
add eax, dword [esp + 0x20]
cmp eax, edi
jl 0x10170e50
mov edx, dword [esi + 0x5cec8]
test edx, edx
je 0x101711d4
test bl, bl
jle 0x101711d4
cmp bh, 0x11
je 0x101711d4
cmp bh, 0x12
je 0x101711d4
cmp bh, 0x18
je 0x101711d4
mov edi, dword [esp + 0x10]
cmp bh, 0x17
je 0x101711d8
movzx eax, bh
xor ecx, ecx
cmp byte [eax + 0x108079a8], 0x10
mov eax, dword [ebp + 8]
setne cl
movsx ecx, byte [ecx + edi]
mov al, byte [ecx + eax + 0x2d88]
cmp al, 0x10
je 0x101711d8
cmp edx, 1
jne 0x10170e50
cmp al, 0x19
jne 0x10170e50
jmp 0x101711d8
mov edi, dword [esp + 0x10]
cmp dword [esi + 0x5cecc], 0
je 0x1017129c
test bl, bl
jg 0x1017129c
push edi
call fcn.10165ce0
add esp, 4
cmp bh, 0xd
je 0x10171204
cmp bh, 0xe
jne 0x1017129c
mov ecx, dword [ebp + 8]
mov cl, byte [ecx + 0x1d]
sub cl, 0xd
cmp cl, 0xb
ja 0x1017129c
mov edx, dword [esp + 0x18]
cmp byte [edx + 0x10b5], 0
je 0x1017129c
cmp byte [edx + 0x10b4], 0
je 0x1017129c
movsx eax, al
lea ecx, [edx + 0x3010]
lea ecx, [ecx + eax*8]
mov al, byte [edx + eax + 0x30f8]
mov dword [esp + 0x1c], ecx
cmp al, 3
jbe 0x1017124e
mov edi, 3
jmp 0x10171255
movzx edi, al
test al, al
je 0x1017129c
mov eax, 0x280
cmp bh, 0xd
jne 0x10171264
cmp word [ecx], ax
jae 0x1017129c
xor edx, edx
xor ecx, ecx
test edi, edi
je 0x1017128c
mov ebp, dword [esp + 0x1c]
mov esi, eax
cmp word [ebp + ecx*2], si
lea eax, [edx + 1]
cmovb eax, edx
inc ecx
mov edx, eax
cmp ecx, edi
jl 0x10171272
mov esi, dword [esp + 0x30]
mov ebp, dword [esp + 0x34]
cmp edi, 2
sbb eax, eax
add eax, 2
cmp edx, eax
jl 0x10170e50
cmp dword [esi + 0x5d148], 0
je 0x10171304
cmp byte [esp + 0x14], 4
jne 0x10171304
test bl, bl
jg 0x10171304
mov eax, dword [esi]
mov ecx, 0x10
mov eax, dword [eax + 0x1978]
cmp eax, ecx
cmovl ecx, eax
sar ecx, 2
cmp dword [esi + 0x5cbac], ecx
jle 0x10171304
mov eax, dword [ebp + 8]
cmp byte [eax + 0x2c], 4
je 0x10171304
cmp dword [esp + 0x80], 6
jle 0x101712e9
cmp bh, 0x10
je 0x10170e50
pop edi
xor eax, eax
cmp bh, 0xe
pop esi
pop ebp
sete al
pop ebx
mov ecx, dword [esp + 0x60]
xor ecx, esp
call fcn.105116c0
add esp, 0x64
ret
mov ecx, dword [esp + 0x70]
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.105116c0
add esp, 0x64
ret