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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 4]
cmp eax, dword [ecx + 8]
jbe 0x410de4
sub esp, 0x84
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x94]
mov ebp, dword [esp + 0x8c]
mov esi, dword [esp + 0x88]
mov eax, edx
xor ecx, ecx
mov edi, ecx
jmp 0x4106f7
add ecx, 0xfffffff8
mov dword [esp], edi
cmp ecx, 8
jb 0x410738
cmp ebx, 1
jne 0x41070e
xchg edi, eax
mov byte [edx], al
xchg edi, eax
shr edi, 8
inc edx
jmp 0x4106f4
and edi, 0xf
or edi, 0xf0
xchg edi, eax
mov byte [edx], al
xchg edi, eax
dec edx
mov edi, dword [esp]
shr edi, 4
and edi, 0xf
or edi, 0xf0
xchg edi, eax
mov byte [edx], al
xchg edi, eax
mov edi, dword [esp]
shr edi, 8
dec edx
jmp 0x4106f4
mov dword [esp + 0x78], edx
mov dword [esp + 0x8c], ebp
movzx ebx, byte [esi]
mov dword [esp + 0x30], ebx
and ebx, 0x7f
inc esi
mov edx, dword [esp + 0x30]
test edx, 0x80
jne 0x4108ea
test edx, 0x7f
jne 0x410800
test ebp, ebp
je 0x41078d
xor edx, edx
mov ebx, dword [esp + 0x78]
mov esi, dword [esp + 0x94]
mov esi, ebp
mov ebp, edx
mov edx, ebx
mov ebx, dword [esp + 0x94]
jmp 0x4106f7
mov edx, dword [esp + 0x94]
cmp edx, 1
jne 0x4107cc
mov edx, dword [esp + 0x78]
mov ebx, edx
sub edx, eax
lea eax, [ecx + edx*8]
mov edx, ecx
neg ecx
and ecx, 7
add ecx, edx
jmp 0x4107ba
xchg edi, eax
mov byte [ebx], al
xchg edi, eax
add ecx, 0xfffffff8
shr edi, 8
inc ebx
test ecx, ecx
ja 0x4107af
mov dword [esp + 0x98], eax
add esp, 0x84
ret
mov edx, dword [esp + 0x78]
mov ebx, edx
sub eax, edx
lea eax, [ecx + eax*4]
mov edx, ecx
neg ecx
and ecx, 3
add ecx, edx
jmp 0x4107fa
mov edx, edi
and edi, 0xf
or edi, 0xf0
xchg edi, eax
mov byte [ebx], al
xchg edi, eax
add ecx, 0xfffffffc
shr edx, 4
dec ebx
mov edi, edx
test ecx, ecx
ja 0x4107e2
jmp 0x4107be
shr ebx, 3
mov dword [esp + 0xc], ebx
mov dword [esp + 0x64], eax
xor eax, eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x5c]
jmp 0x410841
inc ebp
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x74], esi
mov ebp, dword [esp + 0x8c]
mov esi, edx
mov edx, dword [esp + 0x30]
mov ebp, dword [esp + 0x1c]
cmp ebp, ebx
jae 0x4108b0
movzx edx, byte [esi]
shl edx, cl
cmp ecx, 0x20
sbb ebx, ebx
and edx, ebx
or edi, edx
lea edx, [esi + 1]
mov ebx, dword [esp + 0x94]
cmp ebx, 1
jne 0x410874
mov esi, dword [esp + 0x74]
xchg edi, eax
mov byte [esi], al
xchg edi, eax
shr edi, 8
inc esi
jmp 0x410827
mov esi, edi
and edi, 0xf
or edi, 0xf0
mov eax, dword [esp + 0x74]
xchg edi, ebx
mov byte [eax], bl
xchg edi, ebx
dec eax
mov edi, esi
shr esi, 4
and esi, 0xf
or esi, 0xf0
xchg esi, ebx
mov byte [eax], bl
xchg esi, ebx
shr edi, 8
lea esi, [eax - 1]
mov eax, dword [esp + 0x90]
jmp 0x410827
mov ebx, edx
and edx, 7
test ebx, 7
jbe 0x4108e4
movzx ebx, byte [esi]
shl ebx, cl
cmp ecx, 0x20
sbb ebp, ebp
and ebx, ebp
or edi, ebx
add edx, ecx
lea ebx, [esi + 1]
mov ecx, edx
mov ebp, ebx
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x74]
jmp 0x410774
mov edx, ecx
mov ebx, esi
jmp 0x4108d0
mov dword [esp + 8], ecx
test edx, 0x7f
jne 0x410dd6
xor edx, edx
jmp 0x410911
lea edx, [ecx + 7]
mov ecx, dword [esp + 8]
mov edi, dword [esp]
mov esi, ebp
mov ebp, dword [esp + 0x8c]
movzx ebp, byte [esi]
mov dword [esp + 0x30], ebp
and ebp, 0x7f
mov ecx, edx
shl ebp, cl
cmp ecx, 0x20
sbb edi, edi
and edi, ebp
or ebx, edi
lea ebp, [esi + 1]
mov esi, dword [esp + 0x30]
test esi, 0x80
jne 0x4108fe
mov dword [esp + 0x30], ebx
xor ecx, ecx
xor edx, edx
jmp 0x41094a
lea edx, [ecx + 7]
mov ecx, ebx
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x20], ecx
movzx esi, byte [ebp]
mov edi, esi
and esi, 0x7f
mov ecx, edx
shl esi, cl
cmp ecx, 0x20
sbb ebx, ebx
and esi, ebx
mov ebx, dword [esp + 0x20]
or ebx, esi
inc ebp
test edi, 0x80
jne 0x410941
mov dword [esp + 0x80], ebp
mov edx, dword [esp + 0x30]
imul ebx, edx
cmp edx, 0x19
ja 0x410be2
mov esi, dword [esp + 0x94]
cmp esi, 1
jne 0x410b79
mov edi, dword [esp + 0x78]
mov ecx, edi
dec edi
mov dword [esp + 0x54], eax
mov eax, dword [esp + 8]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp]
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x4c]
jmp 0x4109ed
mov eax, dword [esp + 0x28]
shl eax, 8
movzx esi, byte [edi]
or eax, esi
add ebp, 8
dec edi
mov esi, dword [esp + 0x94]
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x90]
mov ebp, dword [esp + 0x80]
mov ebp, dword [esp + 0x2c]
cmp ebp, edx
jb 0x4109c0
mov edi, dword [esp + 0x28]
cmp ebp, edx
jbe 0x410b72
sub ebp, edx
mov ecx, ebp
shr edi, cl
cmp ecx, 0x20
sbb ebp, ebp
and edi, ebp
cmp edx, 1
jne 0x410b0a
cmp edi, 1
jne 0x410b01
mov ecx, 0x19
mov edx, 0x1ffffff
mov dword [esp + 0x30], edx
mov dword [esp + 0x2c], ecx
mov ebp, dword [esp]
mov edi, dword [esp + 0x78]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 8]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x44]
jmp 0x410a6f
xchg ebp, eax
mov byte [edi], al
xchg ebp, eax
shr ebp, 8
add ebx, 0xfffffff8
inc edi
cmp ebx, 8
jae 0x410a4b
mov ecx, dword [esp + 0x20]
sub ecx, edx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x10], ebx
mov ebx, ecx
mov ecx, dword [esp + 0x2c]
cmp ebx, ecx
jb 0x410ab3
mov dword [esp + 0x20], ebx
mov ecx, dword [esp + 0x10]
shl edx, cl
cmp ecx, 0x20
sbb ebx, ebx
and edx, ebx
or ebp, edx
mov edx, dword [esp + 0x2c]
lea ebx, [edx + ecx]
cmp esi, 1
je 0x410a56
jmp 0x410aac
mov ecx, ebp
and ebp, 0xf
or ebp, 0xf0
xchg ebp, eax
mov byte [edi], al
xchg ebp, eax
shr ecx, 4
add ebx, 0xfffffffc
dec edi
mov ebp, ecx
cmp ebx, 4
jae 0x410a94
jmp 0x410a5b
mov dword [esp + 0x7c], edi
test ebx, ebx
jbe 0x410afb
mov ecx, ebx
mov esi, 1
shl esi, cl
cmp ecx, 0x20
sbb edi, edi
and esi, edi
dec esi
and edx, esi
mov ecx, dword [esp + 0x10]
shl edx, cl
cmp ecx, 0x20
sbb esi, esi
and edx, esi
or ebp, edx
lea edx, [ecx + ebx]
mov ecx, edx
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x7c]
mov edi, ebp
mov ebp, dword [esp + 0x80]
jmp 0x410774
mov edx, dword [esp + 0x10]
jmp 0x410ae0
mov ecx, ebx
mov edx, edi
jmp 0x410a2a
lea ebp, [edx + edx]
cmp ebp, 0x19
ja 0x410b6e
mov dword [esp + 0x14], edx
mov ecx, edx
jmp 0x410b36
mov dword [esp + 0x24], edi
mov ecx, edx
shl edi, cl
cmp ecx, 0x20
sbb ebp, ebp
and edi, ebp
mov ebp, dword [esp + 0x24]
or edi, ebp
lea edx, [ecx + ecx]
mov ecx, dword [esp + 0x14]
cmp edx, 0x20
jbe 0x410b1a
test ecx, ecx
je 0x410ddd
mov eax, 0x19
xor edx, edx
div ecx
imul ecx, eax
mov edx, 1
shl edx, cl
cmp ecx, 0x20
sbb ebp, ebp
and edx, ebp
dec edx
and edi, edx
mov eax, dword [esp + 0x90]
mov edx, edi
jmp 0x410a2a
mov ecx, edx
jmp 0x410b60
mov edx, ebp
jmp 0x410a0e
mov edi, dword [esp + 0x78]
mov ecx, edi
inc edi
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 8]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], ecx
mov ecx, dword [esp]
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x34]
jmp 0x410bd1
mov eax, dword [esp + 0x28]
shl eax, 4
movzx esi, byte [edi]
and esi, 0xf
or eax, esi
add ebp, 4
inc edi
mov esi, dword [esp + 0x94]
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x90]
mov ebp, dword [esp + 0x80]
mov ebp, dword [esp + 0x2c]
cmp ebp, edx
jb 0x410ba1
mov edi, dword [esp + 0x28]
jmp 0x4109f9
mov esi, dword [esp + 8]
sub edx, esi
mov dword [esp + 4], edx
mov edi, dword [esp + 0x94]
cmp edi, 1
jne 0x410ce3
lea edi, [edx + 7]
shr edi, 3
and edx, 7
mov ebp, dword [esp + 0x78]
sub ebp, edi
mov dword [esp + 0x30], ebp
mov edi, dword [esp + 4]
test edi, 7
je 0x410cd7
movzx ebp, byte [ebp]
lea edi, [edx - 8]
xchg edi, ebx
neg ebx
xchg edi, ebx
mov ecx, edi
shr ebp, cl
cmp ecx, 0x20
sbb edi, edi
and ebp, edi
mov ecx, esi
shl ebp, cl
cmp ecx, 0x20
sbb edi, edi
and ebp, edi
mov edi, dword [esp]
or edi, ebp
lea ebp, [edx + ecx]
sub ebx, edx
mov edx, dword [esp + 0x30]
inc edx
mov dword [esp + 0x20], ebx
mov ecx, ebx
shr ebx, 3
mov esi, dword [esp + 0x78]
jmp 0x410c85
movzx eax, byte [edx]
mov ecx, ebp
shl eax, cl
cmp ecx, 0x20
sbb ecx, ecx
and eax, ecx
or edi, eax
inc edx
xchg edi, eax
mov byte [esi], al
xchg edi, eax
dec ebx
shr edi, 8
inc esi
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x20]
test ebx, ebx
ja 0x410c60
mov dword [esp + 0x6c], esi
mov ebx, ecx
and ecx, 7
test ebx, 7
jbe 0x410cd3
movzx edx, byte [edx]
mov ebx, 1
shl ebx, cl
dec ebx
and ebx, edx
mov edx, ecx
mov ecx, ebp
shl ebx, cl
cmp ecx, 0x20
sbb esi, esi
and ebx, esi
or edi, ebx
add edx, ecx
mov ecx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x80]
mov ebx, ecx
mov ecx, edx
mov edx, dword [esp + 0x8c]
jmp 0x410774
mov edx, ebp
jmp 0x410cb8
mov edx, ebp
mov ebp, esi
mov edi, dword [esp]
jmp 0x410c51
lea edi, [edx + 3]
shr edi, 2
mov dword [esp + 0x18], edi
and edx, 3
mov ebp, dword [esp + 0x78]
mov dword [esp + 0x30], ebp
add ebp, edi
mov edi, dword [esp + 4]
test edi, 3
je 0x410dca
movzx ebp, byte [ebp]
and ebp, 0xf
lea edi, [edx - 4]
xchg edi, ebx
neg ebx
xchg edi, ebx
mov ecx, edi
shr ebp, cl
cmp ecx, 0x20
sbb edi, edi
and ebp, edi
mov ecx, esi
shl ebp, cl
cmp ecx, 0x20
sbb edi, edi
and ebp, edi
mov edi, dword [esp]
or edi, ebp
lea ebp, [edx + ecx]
sub ebx, edx
mov edx, dword [esp + 0x30]
mov esi, dword [esp + 0x18]
lea edx, [esi + edx - 1]
mov dword [esp + 0x20], ebx
mov ecx, ebx
shr ebx, 2
mov esi, dword [esp + 0x78]
jmp 0x410d8a
movzx eax, byte [edx]
and eax, 0xf
mov ecx, ebp
shl eax, cl
cmp ecx, 0x20
sbb ecx, ecx
and eax, ecx
or edi, eax
mov eax, edi
and edi, 0xf
or edi, 0xf0
dec edx
xchg edi, eax
mov byte [esi], al
xchg edi, eax
dec ebx
shr eax, 4
dec esi
mov ecx, dword [esp + 0x20]
mov edi, eax
mov eax, dword [esp + 0x90]
test ebx, ebx
ja 0x410d55
mov dword [esp + 0x70], esi
mov ebx, ecx
and ecx, 3
test ebx, 3
jbe 0x410dc6
movzx edx, byte [edx]
mov ebx, 1
shl ebx, cl
dec ebx
and ebx, edx
mov edx, ecx
mov ecx, ebp
shl ebx, cl
cmp ecx, 0x20
sbb esi, esi
and ebx, esi
or edi, ebx
add edx, ecx
mov ecx, dword [esp + 0x70]
jmp 0x410cbc
mov edx, ebp
jmp 0x410dbd
mov edx, ebp
mov ebp, esi
mov edi, dword [esp]
jmp 0x410d46
mov ebp, esi
jmp 0x410937
call fcn.004258d0
ud2
call fcn.0044a470
jmp fcn.004106b0