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

Disassembly:
sub esp, 0x1c
push ebx
push ebp
push esi
push edi
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x30]
call fcn.10005e30
mov esi, dword [esp + 0x10]
cmp esi, eax
je 0x10091a20
call fcn.10005e30
mov dword [esp + 0x14], eax
cmp dword [eax + 0x14], 8
jb 0x10091895
mov ecx, dword [eax]
mov dword [esp + 0x14], ecx
mov ebx, dword [eax + 0x10]
mov ecx, esi
call fcn.10005e30
mov edi, eax
mov ebp, dword [edi + 0x14]
cmp ebx, ebp
ja 0x100918dd
mov esi, edi
cmp ebp, 8
jb 0x100918b1
mov esi, dword [edi]
push ebx
push dword [esp + 0x18]
mov dword [edi + 0x10], ebx
push esi
call fcn.10005f10
lea eax, [esp + 0x24]
mov dword [esp + 0x24], 0
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.10005eff
add esp, 0x14
jmp 0x10091a1c
mov ecx, esi
call fcn.1000608d
cmp ebx, eax
ja 0x10092342
mov ecx, esi
call fcn.1000608d
mov ecx, ebx
mov esi, eax
or ecx, 7
mov dword [esp + 0x20], ecx
cmp ecx, esi
ja 0x10091935
mov ecx, dword [esp + 0x10]
call fcn.10005e30
mov edx, dword [eax + 0x14]
mov ecx, edx
shr ecx, 1
mov eax, esi
sub eax, ecx
cmp edx, eax
ja 0x10091935
lea eax, [ecx + edx]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x24]
push eax
call fcn.10005ed6
add esp, 8
mov esi, dword [eax]
lea eax, [esi + 1]
lea ecx, [eax + eax]
cmp eax, 0x7fffffff
jbe 0x10091947
or ecx, 0xffffffff
jmp 0x1009194f
cmp ecx, 0x1000
jb 0x1009197a
lea eax, [ecx + 0x23]
cmp eax, ecx
mov ecx, 0xffffffff
cmovbe eax, ecx
push eax
call fcn.101e4da1
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x10092347
lea eax, [ecx + 0x23]
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x1009198b
test ecx, ecx
je 0x10091989
push ecx
call fcn.101e4da1
add esp, 4
jmp 0x1009198b
xor eax, eax
mov dword [esp + 0x18], eax
push ebx
push dword [esp + 0x18]
mov dword [edi + 0x10], ebx
mov dword [edi + 0x14], esi
mov esi, dword [esp + 0x20]
push esi
call fcn.10005f29
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.10005eff
add esp, 0x14
cmp ebp, 8
jb 0x100919fb
mov eax, dword [edi]
lea ecx, [ebp*2 + 2]
cmp ecx, 0x1000
jb 0x100919e9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10092347
mov eax, edx
push ecx
push eax
call fcn.101e4d70
mov eax, dword [esp + 0x20]
add esp, 8
mov dword [edi], eax
jmp 0x10091a1c
lea eax, [esp + 0x18]
push eax
call fcn.10005f6e
push edi
mov esi, eax
call fcn.10005f6e
push eax
push 4
call fcn.10005b84
mov ecx, dword [esi]
add esp, 0x10
mov dword [eax], ecx
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x30]
lea ebp, [esi + 0x18]
add ecx, 0x18
call fcn.10005e30
cmp ebp, eax
je 0x10091bd9
call fcn.10005e30
mov dword [esp + 0x18], eax
cmp dword [eax + 0x14], 8
jb 0x10091a4c
mov ecx, dword [eax]
mov dword [esp + 0x18], ecx
mov ebx, dword [eax + 0x10]
mov ecx, ebp
call fcn.10005e30
mov edi, eax
mov eax, dword [edi + 0x14]
mov dword [esp + 0x24], eax
cmp ebx, eax
ja 0x10091a98
mov esi, edi
cmp eax, 8
jb 0x10091a6c
mov esi, dword [edi]
push ebx
push dword [esp + 0x1c]
mov dword [edi + 0x10], ebx
push esi
call fcn.10005f10
lea eax, [esp + 0x2c]
mov dword [esp + 0x2c], 0
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.10005eff
add esp, 0x14
jmp 0x10091bd9
mov ecx, ebp
call fcn.1000608d
cmp ebx, eax
ja 0x1009234c
mov ecx, ebp
call fcn.1000608d
mov ecx, ebx
mov esi, eax
or ecx, 7
mov dword [esp + 0x1c], ecx
cmp ecx, esi
ja 0x10091aee
mov ecx, ebp
call fcn.10005e30
mov edx, dword [eax + 0x14]
mov ecx, edx
shr ecx, 1
mov eax, esi
sub eax, ecx
cmp edx, eax
ja 0x10091aee
lea eax, [edx + ecx]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x20]
push eax
call fcn.10005ed6
add esp, 8
mov esi, dword [eax]
lea eax, [esi + 1]
lea ecx, [eax + eax]
cmp eax, 0x7fffffff
jbe 0x10091b00
or ecx, 0xffffffff
jmp 0x10091b08
cmp ecx, 0x1000
jb 0x10091b33
lea eax, [ecx + 0x23]
cmp eax, ecx
mov ecx, 0xffffffff
cmovbe eax, ecx
push eax
call fcn.101e4da1
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x10092347
lea eax, [ecx + 0x23]
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x10091b44
test ecx, ecx
je 0x10091b42
push ecx
call fcn.101e4da1
add esp, 4
jmp 0x10091b44
xor eax, eax
mov dword [esp + 0x14], eax
push ebx
push dword [esp + 0x1c]
mov dword [edi + 0x10], ebx
mov dword [edi + 0x14], esi
mov esi, dword [esp + 0x1c]
push esi
call fcn.10005f29
lea eax, [esp + 0x24]
mov dword [esp + 0x24], 0
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.10005eff
mov ecx, dword [esp + 0x38]
add esp, 0x14
cmp ecx, 8
jb 0x10091bb8
mov eax, dword [edi]
lea ecx, [ecx*2 + 2]
cmp ecx, 0x1000
jb 0x10091ba6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10092347
mov eax, edx
push ecx
push eax
call fcn.101e4d70
mov eax, dword [esp + 0x1c]
add esp, 8
mov dword [edi], eax
jmp 0x10091bd9
lea eax, [esp + 0x14]
push eax
call fcn.10005f6e
push edi
mov esi, eax
call fcn.10005f6e
push eax
push 4
call fcn.10005b84
mov ecx, dword [esi]
add esp, 0x10
mov dword [eax], ecx
mov ecx, dword [esp + 0x30]
mov ebp, dword [esp + 0x10]
add ecx, 0x30
add ebp, 0x30
call fcn.10005e30
cmp ebp, eax
je 0x10091d96
call fcn.10005e30
mov dword [esp + 0x18], eax
cmp dword [eax + 0x14], 8
jb 0x10091c09
mov ecx, dword [eax]
mov dword [esp + 0x18], ecx
mov ebx, dword [eax + 0x10]
mov ecx, ebp
call fcn.10005e30
mov edi, eax
mov eax, dword [edi + 0x14]
mov dword [esp + 0x28], eax
cmp ebx, eax
ja 0x10091c55
mov esi, edi
cmp eax, 8
jb 0x10091c29
mov esi, dword [edi]
push ebx
push dword [esp + 0x1c]
mov dword [edi + 0x10], ebx
push esi
call fcn.10005f10
lea eax, [esp + 0x30]
mov dword [esp + 0x30], 0
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.10005eff
add esp, 0x14
jmp 0x10091d96
mov ecx, ebp
call fcn.1000608d
cmp ebx, eax
ja 0x10092351
mov ecx, ebp
call fcn.1000608d
mov ecx, ebx
mov esi, eax
or ecx, 7
mov dword [esp + 0x20], ecx
cmp ecx, esi
ja 0x10091cab
mov ecx, ebp
call fcn.10005e30
mov edx, dword [eax + 0x14]
mov ecx, edx
shr ecx, 1
mov eax, esi
sub eax, ecx
cmp edx, eax
ja 0x10091cab
lea eax, [edx + ecx]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x24]
push eax
call fcn.10005ed6
add esp, 8
mov esi, dword [eax]
lea eax, [esi + 1]
lea ecx, [eax + eax]
cmp eax, 0x7fffffff
jbe 0x10091cbd
or ecx, 0xffffffff
jmp 0x10091cc5
cmp ecx, 0x1000
jb 0x10091cf0
lea eax, [ecx + 0x23]
cmp eax, ecx
mov ecx, 0xffffffff
cmovbe eax, ecx
push eax
call fcn.101e4da1
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x10092347
lea eax, [ecx + 0x23]
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x10091d01
test ecx, ecx
je 0x10091cff
push ecx
call fcn.101e4da1
add esp, 4
jmp 0x10091d01
xor eax, eax
mov dword [esp + 0x14], eax
push ebx
push dword [esp + 0x1c]
mov dword [edi + 0x10], ebx
mov dword [edi + 0x14], esi
mov esi, dword [esp + 0x1c]
push esi
call fcn.10005f29
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 0
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.10005eff
mov ecx, dword [esp + 0x3c]
add esp, 0x14
cmp ecx, 8
jb 0x10091d75
mov eax, dword [edi]
lea ecx, [ecx*2 + 2]
cmp ecx, 0x1000
jb 0x10091d63
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10092347
mov eax, edx
push ecx
push eax
call fcn.101e4d70
mov eax, dword [esp + 0x1c]
add esp, 8
mov dword [edi], eax
jmp 0x10091d96
lea eax, [esp + 0x14]
push eax
call fcn.10005f6e
push edi
mov esi, eax
call fcn.10005f6e
push eax
push 4
call fcn.10005b84
mov ecx, dword [esi]
add esp, 0x10
mov dword [eax], ecx
mov ecx, dword [esp + 0x30]
mov ebp, dword [esp + 0x10]
add ecx, 0x48
add ebp, 0x48
call fcn.10005e30
cmp ebp, eax
je 0x10091f53
call fcn.10005e30
mov dword [esp + 0x18], eax
cmp dword [eax + 0x14], 8
jb 0x10091dc6
mov ecx, dword [eax]
mov dword [esp + 0x18], ecx
mov ebx, dword [eax + 0x10]
mov ecx, ebp
call fcn.10005e30
mov edi, eax
mov eax, dword [edi + 0x14]
mov dword [esp + 0x1c], eax
cmp ebx, eax
ja 0x10091e12
mov esi, edi
cmp eax, 8
jb 0x10091de6
mov esi, dword [edi]
push ebx
push dword [esp + 0x1c]
mov dword [edi + 0x10], ebx
push esi
call fcn.10005f10
lea eax, [esp + 0x34]
mov dword [esp + 0x34], 0
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.10005eff
add esp, 0x14
jmp 0x10091f53
mov ecx, ebp
call fcn.1000608d
cmp ebx, eax
ja 0x10092356
mov ecx, ebp
call fcn.1000608d
mov ecx, ebx
mov esi, eax
or ecx, 7
mov dword [esp + 0x24], ecx
cmp ecx, esi
ja 0x10091e68
mov ecx, ebp
call fcn.10005e30
mov edx, dword [eax + 0x14]
mov ecx, edx
shr ecx, 1
mov eax, esi
sub eax, ecx
cmp edx, eax
ja 0x10091e68
lea eax, [edx + ecx]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x28]
push eax
call fcn.10005ed6
add esp, 8
mov esi, dword [eax]
lea eax, [esi + 1]
lea ecx, [eax + eax]
cmp eax, 0x7fffffff
jbe 0x10091e7a
or ecx, 0xffffffff
jmp 0x10091e82
cmp ecx, 0x1000
jb 0x10091ead
lea eax, [ecx + 0x23]
cmp eax, ecx
mov ecx, 0xffffffff
cmovbe eax, ecx
push eax
call fcn.101e4da1
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x10092347
lea eax, [ecx + 0x23]
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x10091ebe
test ecx, ecx
je 0x10091ebc
push ecx
call fcn.101e4da1
add esp, 4
jmp 0x10091ebe
xor eax, eax
mov dword [esp + 0x14], eax
push ebx
push dword [esp + 0x1c]
mov dword [edi + 0x10], ebx
mov dword [edi + 0x14], esi
mov esi, dword [esp + 0x1c]
push esi
call fcn.10005f29
lea eax, [esp + 0x2c]
mov dword [esp + 0x2c], 0
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.10005eff
mov ecx, dword [esp + 0x30]
add esp, 0x14
cmp ecx, 8
jb 0x10091f32
mov eax, dword [edi]
lea ecx, [ecx*2 + 2]
cmp ecx, 0x1000
jb 0x10091f20
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10092347
mov eax, edx
push ecx
push eax
call fcn.101e4d70
mov eax, dword [esp + 0x1c]
add esp, 8
mov dword [edi], eax
jmp 0x10091f53
lea eax, [esp + 0x14]
push eax
call fcn.10005f6e
push edi
mov esi, eax
call fcn.10005f6e
push eax
push 4
call fcn.10005b84
mov ecx, dword [esi]
add esp, 0x10
mov dword [eax], ecx
mov ecx, dword [esp + 0x30]
mov ebp, dword [esp + 0x10]
add ecx, 0x60
add ebp, 0x60
call fcn.10005e30
cmp ebp, eax
je 0x10092110
call fcn.10005e30
mov dword [esp + 0x18], eax
cmp dword [eax + 0x14], 8
jb 0x10091f83
mov ecx, dword [eax]
mov dword [esp + 0x18], ecx
mov ebx, dword [eax + 0x10]
mov ecx, ebp
call fcn.10005e30
mov edi, eax
mov eax, dword [edi + 0x14]
mov dword [esp + 0x1c], eax
cmp ebx, eax
ja 0x10091fcf
mov esi, edi
cmp eax, 8
jb 0x10091fa3
mov esi, dword [edi]
push ebx
push dword [esp + 0x1c]
mov dword [edi + 0x10], ebx
push esi
call fcn.10005f10
lea eax, [esp + 0x34]
mov dword [esp + 0x34], 0
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.10005eff
add esp, 0x14
jmp 0x10092110
mov ecx, ebp
call fcn.1000608d
cmp ebx, eax
ja 0x1009235b
mov ecx, ebp
call fcn.1000608d
mov ecx, ebx
mov esi, eax
or ecx, 7
mov dword [esp + 0x24], ecx
cmp ecx, esi
ja 0x10092025
mov ecx, ebp
call fcn.10005e30
mov edx, dword [eax + 0x14]
mov ecx, edx
shr ecx, 1
mov eax, esi
sub eax, ecx
cmp edx, eax
ja 0x10092025
lea eax, [edx + ecx]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x28]
push eax
call fcn.10005ed6
add esp, 8
mov esi, dword [eax]
lea eax, [esi + 1]
lea ecx, [eax + eax]
cmp eax, 0x7fffffff
jbe 0x10092037
or ecx, 0xffffffff
jmp 0x1009203f
cmp ecx, 0x1000
jb 0x1009206a
lea eax, [ecx + 0x23]
cmp eax, ecx
mov ecx, 0xffffffff
cmovbe eax, ecx
push eax
call fcn.101e4da1
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x10092347
lea eax, [ecx + 0x23]
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x1009207b
test ecx, ecx
je 0x10092079
push ecx
call fcn.101e4da1
add esp, 4
jmp 0x1009207b
xor eax, eax
mov dword [esp + 0x14], eax
push ebx
push dword [esp + 0x1c]
mov dword [edi + 0x10], ebx
mov dword [edi + 0x14], esi
mov esi, dword [esp + 0x1c]
push esi
call fcn.10005f29
lea eax, [esp + 0x2c]
mov dword [esp + 0x2c], 0
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.10005eff
mov ecx, dword [esp + 0x30]
add esp, 0x14
cmp ecx, 8
jb 0x100920ef
mov eax, dword [edi]
lea ecx, [ecx*2 + 2]
cmp ecx, 0x1000
jb 0x100920dd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10092347
mov eax, edx
push ecx
push eax
call fcn.101e4d70
mov eax, dword [esp + 0x1c]
add esp, 8
mov dword [edi], eax
jmp 0x10092110
lea eax, [esp + 0x14]
push eax
call fcn.10005f6e
push edi
mov esi, eax
call fcn.10005f6e
push eax
push 4
call fcn.10005b84
mov ecx, dword [esi]
add esp, 0x10
mov dword [eax], ecx
mov ecx, dword [esp + 0x30]
mov ebp, dword [esp + 0x10]
add ecx, 0x78
add ebp, 0x78
call fcn.10005e30
cmp ebp, eax
je 0x100922cd
call fcn.10005e30
mov dword [esp + 0x18], eax
cmp dword [eax + 0x14], 8
jb 0x10092140
mov ecx, dword [eax]
mov dword [esp + 0x18], ecx
mov ebx, dword [eax + 0x10]
mov ecx, ebp
call fcn.10005e30
mov edi, eax
mov eax, dword [edi + 0x14]
mov dword [esp + 0x1c], eax
cmp ebx, eax
ja 0x1009218c
mov esi, edi
cmp eax, 8
jb 0x10092160
mov esi, dword [edi]
push ebx
push dword [esp + 0x1c]
mov dword [edi + 0x10], ebx
push esi
call fcn.10005f10
lea eax, [esp + 0x34]
mov dword [esp + 0x34], 0
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.10005eff
add esp, 0x14
jmp 0x100922cd
mov ecx, ebp
call fcn.1000608d
cmp ebx, eax
ja 0x10092360
mov ecx, ebp
call fcn.1000608d
mov ecx, ebx
mov esi, eax
or ecx, 7
mov dword [esp + 0x24], ecx
cmp ecx, esi
ja 0x100921e2
mov ecx, ebp
call fcn.10005e30
mov edx, dword [eax + 0x14]
mov ecx, edx
shr ecx, 1
mov eax, esi
sub eax, ecx
cmp edx, eax
ja 0x100921e2
lea eax, [edx + ecx]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x28]
push eax
call fcn.10005ed6
add esp, 8
mov esi, dword [eax]
lea eax, [esi + 1]
lea ecx, [eax + eax]
cmp eax, 0x7fffffff
jbe 0x100921f4
or ecx, 0xffffffff
jmp 0x100921fc
cmp ecx, 0x1000
jb 0x10092227
lea eax, [ecx + 0x23]
cmp eax, ecx
mov ecx, 0xffffffff
cmovbe eax, ecx
push eax
call fcn.101e4da1
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x10092347
lea eax, [ecx + 0x23]
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x10092238
test ecx, ecx
je 0x10092236
push ecx
call fcn.101e4da1
add esp, 4
jmp 0x10092238
xor eax, eax
mov dword [esp + 0x14], eax
push ebx
push dword [esp + 0x1c]
mov dword [edi + 0x10], ebx
mov dword [edi + 0x14], esi
mov esi, dword [esp + 0x1c]
push esi
call fcn.10005f29
lea eax, [esp + 0x2c]
mov dword [esp + 0x2c], 0
push eax
lea eax, [esi + ebx*2]
push eax
call fcn.10005eff
mov ecx, dword [esp + 0x30]
add esp, 0x14
cmp ecx, 8
jb 0x100922ac
mov eax, dword [edi]
lea ecx, [ecx*2 + 2]
cmp ecx, 0x1000
jb 0x1009229a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10092347
mov eax, edx
push ecx
push eax
call fcn.101e4d70
mov eax, dword [esp + 0x1c]
add esp, 8
mov dword [edi], eax
jmp 0x100922cd
lea eax, [esp + 0x14]
push eax
call fcn.10005f6e
push edi
mov esi, eax
call fcn.10005f6e
push eax
push 4
call fcn.10005b84
mov ecx, dword [esi]
add esp, 0x10
mov dword [eax], ecx
mov ecx, dword [esp + 0x30]
mov ebp, dword [esp + 0x10]
movzx eax, byte [ecx + 0x90]
lea esi, [ecx + 0x98]
mov byte [ebp + 0x90], al
lea edi, [ebp + 0x98]
movzx eax, byte [ecx + 0x91]
mov byte [ebp + 0x91], al
movzx eax, byte [ecx + 0x92]
mov byte [ebp + 0x92], al
movzx eax, byte [ecx + 0x93]
mov byte [ebp + 0x93], al
movzx eax, byte [ecx + 0x94]
mov byte [ebp + 0x94], al
movzx eax, byte [ecx + 0x95]
mov ecx, 0xd7
mov byte [ebp + 0x95], al
mov eax, ebp
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret 4
call fcn.1000604b
call fcn.10205f6e
call fcn.1000604b
call fcn.1000604b
call fcn.1000604b
call fcn.1000604b
call fcn.1000604b
int3