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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xd4
mov esi, dword [esp + 0xec]
mov eax, dword [esp + 0xe8]
lea ecx, [esp + 0x80]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x100001
mov dword [esp + 0xc], 3
mov dword [esp + 0x10], 0x4021
call fcn.010c05a0
xor ecx, ecx
cmp eax, 0
jl 0x10a3273
mov dword [esp], esi
call fcn.01098370
shl eax, 1
mov word [esp + 0xb8], ax
movzx eax, ax
add eax, 2
mov word [esp + 0xba], ax
mov dword [esp + 0xbc], esi
mov dword [esp], 0x848
call fcn.010bb2e0
mov dword [esp + 0x64], eax
mov esi, dword [esp + 0x80]
mov al, byte [esp + 0x88]
mov byte [esp + 0xa4], al
mov byte [esp + 0x50], 0x2f
mov byte [esp + 0x51], 0x2e
mov byte [esp + 0x52], 0x2d
mov byte [esp + 0x53], 0x2c
xor eax, eax
cmp eax, 4
jae 0x10a2b68
movzx edi, byte [esp + eax + 0x50]
mov ecx, 0x47
sub ecx, eax
or ecx, edi
mov edx, 0x47
sub edx, eax
mov ebx, 0x47
sub ebx, eax
and edx, ebx
mov ebx, 0x47
sub ebx, eax
mov ebp, 0x47
sub ebp, eax
or ebx, ebp
or edx, ebx
and edx, edi
xor ecx, 0xffffffff
or edx, ecx
add dl, 0x68
mov byte [esp + eax + 0x50], dl
add eax, 1
jmp 0x10a2b20
mov edi, dword [esp + 0x50]
xor ebp, ebp
mov ecx, 2
cmp ebp, dword [0x10ccdc4]
jb 0x10a2b80
jmp 0x10a2c38
mov edx, dword [0x10ccdc8]
cmp dword [edx + ebp*8], 0x7fd4133f
sete bl
xor ecx, ecx
mov byte [esp + 0x3b], bl
test bl, 1
jne 0x10a2ba0
jmp 0x10a2c27
mov edx, dword [edx + ebp*8 + 4]
mov ecx, 2
cmp edx, edi
je 0x10a2c27
mov eax, dword [0x10ccdcc]
xor ecx, ecx
lea ecx, [esp + 0xcc]
lea ebx, [esp + 0xb8]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], 0x2c
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x64]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], 0x848
mov dword [esp + 0x28], 2
mov dword [esp + 0x2c], 1
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], 0
call fcn.010bdb70
mov ecx, 1
test byte [esp + 0x3b], 1
je 0x10a2c30
jmp 0x10a2c38
add ebp, 1
jmp 0x10a2b6e
cmp ecx, 2
je 0x10a2c3f
mov edi, eax
xor ebx, ebx
cmp edi, 0
jl 0x10a3186
mov dword [esp + 0x58], 0
xor ebx, ebx
xor esi, esi
mov eax, dword [esp + 0x64]
mov dword [esp + 0x5c], eax
jmp 0x10a2c60
mov dword [esp + 0x3c], esi
mov eax, dword [esp + 0x5c]
mov edi, dword [eax + 0x3c]
shr edi, 1
mov esi, eax
add esi, 0x38
mov eax, dword [eax + 0x38]
and eax, 0x400
cmp eax, 0
jne 0x10a2e5a
mov dword [esp + 0x40], ebx
mov al, byte [esp + 0x7c]
mov byte [esp + 0x8c], al
mov byte [esp + 0x48], 0x36
mov byte [esp + 0x49], 0xdb
mov byte [esp + 0x4a], 0xda
mov byte [esp + 0x4b], 0xd9
xor eax, eax
cmp eax, 4
jae 0x10a2cf0
movzx ecx, byte [esp + eax + 0x48]
mov ebx, 0x9c4a950
sub ebx, eax
and ebx, 0xb70cefef
mov edx, 0x9c4a950
sub edx, eax
and edx, 0x48f31010
xor ecx, 0xb70cefef
or edx, ebx
xor edx, 0x48f31010
mov ebx, edx
and ebx, ecx
shl ebx, 1
sub edx, ebx
add edx, ecx
add dl, 0x95
mov byte [esp + eax + 0x48], dl
add eax, 1
jmp 0x10a2ca8
mov ebx, dword [esp + 0x40]
jmp 0x10a2cf6
mov ebp, dword [esp + 0x5c]
add ebp, 0x44
lea eax, [esp + 0x48]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.010a3290
cmp eax, 0
je 0x10a2e5a
mov al, byte [esp + 0x78]
mov byte [esp + 0x90], al
mov byte [esp + 0xac], 0x9a
mov byte [esp + 0xad], 0xc9
mov byte [esp + 0xae], 0x9c
mov byte [esp + 0xaf], 0xcf
mov byte [esp + 0xb0], 0xcc
mov byte [esp + 0xb1], 0xcd
mov eax, 6
mov byte [esp + eax + 0xac], 0
add eax, 1
cmp eax, 9
jne 0x10a2d5a
xor eax, eax
cmp eax, 9
jae 0x10a2d9a
movzx edx, byte [esp + eax + 0xac]
mov ecx, eax
add ecx, 0xf4287ed2
mov ebx, ecx
and ebx, edx
shl ebx, 1
add ecx, edx
sub ecx, ebx
add cl, 0xe6
mov byte [esp + eax + 0xac], cl
add eax, 1
jmp 0x10a2d6c
lea eax, [esp + 0xac]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.010a3290
cmp eax, 0
setne al
mov ebx, dword [esp + 0x40]
test al, 1
jne 0x10a2dc8
mov esi, dword [esp + 0x3c]
jmp 0x10a2e60
mov eax, edi
add eax, 1
mov ecx, 2
mul ecx
seto dl
mov ecx, 0xffffffff
test dl, 1
jne 0x10a2de3
mov ecx, eax
mov dword [esp], ecx
call fcn.01088730
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edi
mov edi, eax
call fcn.01097fe0
mov word [eax], 0
mov eax, dword [esp + 0x5c]
mov ecx, dword [eax + 0x28]
mov edx, dword [esi]
and edx, 0x10
xor eax, eax
cmp edx, 0
setne al
mov edx, dword [esp + 0xf4]
mov dword [esp + 0xc], edx
mov dword [esp + 8], ecx
mov dword [esp], edi
and eax, 1
mov dword [esp + 4], eax
call dword [esp + 0xf0]
and al, 1
movzx eax, al
and bl, 1
movzx ecx, bl
or ecx, eax
cmp ecx, 0
setne bl
and bl, 1
mov esi, dword [esp + 0x3c]
mov dword [esp], edi
call fcn.01088740
jmp 0x10a2e60
mov esi, dword [esp + 0x3c]
jmp 0x10a2e60
cmp esi, 0
je 0x10a2e6b
mov edi, dword [esp + 0x58]
jmp 0x10a2e8e
mov dword [esp], 0x10900
call fcn.010bb2e0
mov edi, eax
cmp edi, 0
jne 0x10a2e8a
xor esi, esi
mov eax, 2
jmp 0x10a316f
mov esi, edi
jmp 0x10a2e8e
cmp edi, esi
jne 0x10a3150
mov al, byte [esp + 0x6c]
mov byte [esp + 0x94], al
mov byte [esp + 0x70], 0xfc
mov byte [esp + 0x71], 0xe4
mov byte [esp + 0x72], 0xfd
mov byte [esp + 0x73], 0xf1
mov eax, 4
mov byte [esp + eax + 0x70], 0
add eax, 1
cmp eax, 8
jne 0x10a2eba
xor eax, eax
cmp eax, 8
jae 0x10a2ee5
mov cl, byte [esp + eax + 0x70]
mov dl, al
add dl, 0x55
xor dl, cl
add dl, 0x57
mov byte [esp + eax + 0x70], dl
add eax, 1
jmp 0x10a2ec9
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], ebx
mov eax, dword [esp + 0x70]
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0xc4], eax
mov al, byte [esp + 0x84]
mov byte [esp + 0xa8], al
mov byte [esp + 0x4c], 0x2f
mov byte [esp + 0x4d], 0x2e
mov byte [esp + 0x4e], 0x2d
mov byte [esp + 0x4f], 0x2c
xor eax, eax
cmp eax, 4
jae 0x10a2f72
movzx esi, byte [esp + eax + 0x4c]
mov ecx, 0x47
sub ecx, eax
or ecx, esi
mov edx, 0x47
sub edx, eax
mov ebx, 0x47
sub ebx, eax
and edx, ebx
mov ebx, 0x47
sub ebx, eax
mov ebp, 0x47
sub ebp, eax
or ebx, ebp
or edx, ebx
and edx, esi
xor ecx, 0xffffffff
or edx, ecx
add dl, 0x68
mov byte [esp + eax + 0x4c], dl
add eax, 1
jmp 0x10a2f2a
mov edx, dword [esp + 0x4c]
xor ebp, ebp
mov ebx, dword [esp + 0x40]
mov ecx, 2
cmp ebp, dword [0x10ccdc4]
jb 0x10a2f8e
jmp 0x10a3068
mov esi, ebx
mov dword [esp + 0x60], edx
mov edx, dword [0x10ccdc8]
cmp dword [edx + ebp*8], 0x7fd4133f
sete bl
xor ecx, ecx
mov byte [esp + 0x3a], bl
test bl, 1
jne 0x10a2fb6
mov ebx, esi
jmp 0x10a304f
mov edx, dword [edx + ebp*8 + 4]
mov ecx, 2
cmp edx, dword [esp + 0x60]
mov ebx, esi
je 0x10a304f
mov eax, dword [0x10ccdcc]
xor ecx, ecx
lea ecx, [esp + 0xcc]
lea ebx, [esp + 0xb8]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], 0x2c
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edi
mov eax, dword [esp + 0xc8]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], 2
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x34], 0
call fcn.010bdb70
mov ecx, 1
test byte [esp + 0x3a], 1
je 0x10a305c
mov edx, dword [esp + 0x60]
jmp 0x10a3068
add ebp, 1
mov edx, dword [esp + 0x60]
jmp 0x10a2f7c
cmp ecx, 2
je 0x10a306f
mov edx, eax
mov al, byte [esp + 0x68]
mov byte [esp + 0x98], al
mov byte [esp + 0x44], 0x85
mov byte [esp + 0x45], 0x89
mov byte [esp + 0x46], 0xb6
mov byte [esp + 0x47], 0x37
xor esi, esi
cmp esi, 4
jae 0x10a30ea
mov al, byte [esp + esi + 0x44]
mov byte [esp + 0x39], al
movzx ebx, al
mov eax, esi
add eax, 0x881697de
mov ebp, 0x37e96821
sub ebp, esi
and ebp, 0x26c43150
mov ecx, edi
mov edi, edx
mov edx, eax
and edx, 0x593bceaf
or ebp, edx
mov edx, edi
mov edi, ecx
xor ebp, ebx
xor ebp, 0x2f
and eax, ebp
shl eax, 1
mov ebx, esi
sub ebx, eax
add bl, 0xde
add bl, byte [esp + 0x39]
add bl, 0xaa
mov byte [esp + esi + 0x44], bl
mov ebx, dword [esp + 0x40]
add esi, 1
jmp 0x10a3090
cmp edx, dword [esp + 0x44]
sete al
test al, 1
mov esi, dword [esp + 0x3c]
jne 0x10a30fb
jmp 0x10a312d
xor eax, eax
mov edx, edi
jmp 0x10a3101
mov ecx, edx
mov esi, dword [ecx]
cmp esi, 0
je 0x10a3118
shr esi, 2
shl esi, 2
mov edx, ecx
add edx, esi
mov eax, ecx
jmp 0x10a3101
cmp eax, 0
mov esi, dword [esp + 0x3c]
je 0x10a3129
mov dword [eax], 0
jmp 0x10a3129
xor edx, edx
jmp 0x10a312d
cmp edx, 0
jge 0x10a3141
mov dword [esp], esi
call fcn.010bb380
mov eax, 2
jmp 0x10a3145
xor eax, eax
jmp 0x10a3145
cmp eax, 0
je 0x10a3150
mov dword [esp + 0x58], edi
jmp 0x10a316f
mov eax, dword [edi]
cmp eax, 0
je 0x10a3161
mov ecx, edi
add ecx, eax
mov dword [esp + 0x58], ecx
jmp 0x10a3167
mov dword [esp + 0x58], esi
jmp 0x10a3167
xor eax, eax
mov dword [esp + 0x5c], edi
jmp 0x10a316f
test eax, eax
je 0x10a2c60
jmp 0x10a3179
sub eax, 2
jne 0x10a3284
jmp 0x10a3184
jmp 0x10a3186
mov esi, ebx
mov eax, dword [esp + 0x64]
mov dword [esp], eax
call fcn.010bb380
mov eax, dword [esp + 0x80]
mov dword [esp + 0xc0], eax
mov al, byte [esp + 0x9c]
mov byte [esp + 0xa0], al
mov byte [esp + 0x54], 0x2f
mov byte [esp + 0x55], 0x2e
mov byte [esp + 0x56], 0x2d
mov byte [esp + 0x57], 0x2c
xor eax, eax
cmp eax, 4
jae 0x10a320e
movzx edi, byte [esp + eax + 0x54]
mov ecx, 0x47
sub ecx, eax
or ecx, edi
mov edx, 0x47
sub edx, eax
mov ebx, 0x47
sub ebx, eax
and edx, ebx
mov ebx, 0x47
sub ebx, eax
mov ebp, 0x47
sub ebp, eax
or ebx, ebp
or edx, ebx
and edx, edi
xor ecx, 0xffffffff
or edx, ecx
add dl, 0x68
mov byte [esp + eax + 0x54], dl
add eax, 1
jmp 0x10a31c6
mov edi, dword [esp + 0x54]
xor ebp, ebp
mov ecx, esi
cmp ebp, dword [0x10ccdc4]
jb 0x10a3220
jmp 0x10a3273
mov eax, dword [0x10ccdc8]
cmp dword [eax + ebp*8], 0x1b6183f2
sete bl
test bl, 1
jne 0x10a3236
jmp 0x10a3263
mov eax, dword [eax + ebp*8 + 4]
cmp eax, edi
je 0x10a3263
mov ecx, dword [0x10ccdcc]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
mov eax, dword [esp + 0xc0]
mov dword [esp + 0xc], eax
call fcn.010bdb70
test bl, 1
je 0x10a326c
mov ecx, esi
jmp 0x10a3273
add ebp, 1
mov ecx, esi
jmp 0x10a3216
and cl, 1
movzx eax, cl
add esp, 0xd4
pop esi
pop edi
pop ebx
pop ebp
ret
int3