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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x98
mov esi, esp
mov al, 1
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, edx
add ebx, 0x106c1cbc
sub ebx, 1
sub ebx, 0x106c1cbc
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl dl
mov dh, ah
xor dh, 1
mov bl, dl
xor bl, 1
xor al, 0
mov bh, dh
and bh, 0
and ah, al
mov byte [esi + 0x8f], al
mov al, bl
and al, 0
mov byte [esi + 0x8e], al
mov al, byte [esi + 0x8f]
and dl, al
or bh, ah
mov ah, byte [esi + 0x8e]
or ah, dl
xor bh, ah
or dh, bl
xor dh, 1
or al, 0
and dh, al
or bh, dh
test bh, 1
mov dword [esi + 0x88], ecx
jne 0x100b16e7
jmp 0x100b2154
mov eax, 4
mov dword [esi + 0x84], eax
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x80], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x7c], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x78], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x74], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x70], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, 0x18
mov dword [esi + 0x6c], eax
mov eax, ecx
mov dword [esi + 0x68], ecx
call fcn.1001fcd0
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x64], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x60], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x5c], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x58], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x54], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x50], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x4c], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x68]
mov dword [esi + 0x48], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x44], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x40], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x3c], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x38], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, 0x1c
mov dword [esi + 0x34], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0x84]
mov dword [esi + 0x30], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x80]
mov edx, dword [esi + 0x88]
mov dword [ecx], edx
mov edi, dword [ecx]
cmp dword [edi + 0x110], 0
setne bl
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov dword [esi + 0x2c], eax
mov eax, ecx
add eax, 0x7652aca9
sub eax, 1
sub eax, 0x7652aca9
imul ecx, eax
and ecx, 1
cmp ecx, 0
sete bh
cmp edx, 0xa
setl al
mov ah, bh
and ah, al
xor bh, al
or ah, bh
test ah, 1
mov byte [esi + 0x2b], bl
mov dword [esi + 0x24], edi
jne 0x100b18e5
jmp 0x100b2154
mov al, byte [esi + 0x2b]
test al, 1
jne 0x100b18fa
jmp 0x100b18f5
jmp 0x100b2089
mov eax, 0
mov ecx, eax
add ecx, 0x10
sub eax, ecx
mov ecx, dword [esi + 0x24]
mov edx, dword [ecx + 0x110]
mov edx, dword [edx + 0xc]
mov edi, dword [esi + 0x7c]
mov dword [edi], edx
mov edx, dword [edi]
mov edx, dword [edx + 0x1c]
add edx, eax
mov eax, dword [esi + 0x78]
mov dword [eax], edx
mov edx, dword [eax]
mov edx, dword [edx + 0x18]
mov ebx, dword [esi + 0x74]
mov dword [ebx], edx
mov edx, dword [ebx]
mov eax, dword [eax]
mov eax, dword [eax + 0x20]
sub edx, 0x1e796a46
add edx, eax
add edx, 0x1e796a46
sub edx, 0x89e894f
sub edx, 1
add edx, 0x89e894f
mov eax, dword [esi + 0x70]
mov dword [eax], edx
mov edx, dword [esi + 0x78]
mov eax, dword [edx]
mov eax, dword [eax + 0x30]
sub esp, 4
mov ecx, esp
mov dword [ecx], eax
mov ecx, dword [esi + 0x64]
call fcn.1002cf80
sub esp, 4
mov ecx, esp
mov edx, dword [esi + 0x64]
mov dword [ecx], edx
mov ecx, dword [esi + 0x24]
mov dword [esi + 0x20], eax
call fcn.100ee990
mov dword [esi + 0x1c], eax
mov eax, 0xffffffff
xor eax, 0x1f
mov ecx, dword [esi + 0x1c]
xor ecx, eax
mov eax, dword [esi + 0x1c]
and ecx, eax
mov edx, dword [esi + 0x64]
mov dword [esi + 0x18], ecx
mov ecx, edx
call fcn.1009a620
mov eax, 0xffffffff
mov ecx, dword [esi + 0x6c]
mov edx, dword [esi + 0x18]
mov dword [ecx], edx
mov edx, dword [esi + 0x24]
mov edi, dword [edx + 0x298]
xor eax, 0xc
mov ebx, edi
xor ebx, eax
and ebx, edi
cmp ebx, 0
je 0x100b1a03
mov eax, 0
add eax, 0xc
mov ecx, dword [esi + 0x24]
mov edx, dword [ecx + 0x110]
mov edx, dword [edx + 0xc]
sub edx, 0x5c3de309
add edx, eax
add edx, 0x5c3de309
mov dword [ecx + 0xe4], edx
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0x3641dafd
sub edi, 1
add edi, 0x3641dafd
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x100b1a79
jmp 0x100b216d
mov eax, dword [esi + 0x78]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x3c]
mov edx, dword [esi + 0x58]
mov dword [edx], ecx
mov ecx, dword [0x101537c8]
mov edi, dword [0x101537c4]
mov ebx, ecx
add ebx, 0x111f58ce
sub ebx, 1
sub ebx, 0x111f58ce
imul ecx, ebx
and ecx, 1
cmp ecx, 0
sete al
cmp edi, 0xa
setl ah
mov cl, al
and cl, ah
xor al, ah
or cl, al
test cl, 1
jne 0x100b1ad7
jmp 0x100b216d
jmp 0x100b1adc
mov eax, dword [esi + 0x58]
mov ecx, dword [eax]
mov edx, dword [esi + 0x78]
mov edi, dword [edx]
add edi, 0x3c
cmp ecx, edi
je 0x100b1b55
mov eax, dword [esi + 0x58]
mov ecx, dword [eax]
mov edx, dword [esi + 0x74]
cmp ecx, dword [edx]
jb 0x100b1b42
mov eax, dword [esi + 0x58]
mov ecx, dword [eax]
mov edx, dword [esi + 0x70]
cmp ecx, dword [edx]
jae 0x100b1b42
mov eax, 0
mov ecx, dword [esi + 0x58]
mov edx, dword [ecx]
mov edi, dword [esi + 0x6c]
mov ebx, dword [edi]
sub eax, 0xa63343ff
sub eax, ebx
add eax, 0xa63343ff
shl eax, 3
add edx, eax
mov eax, dword [esi + 0x24]
mov dword [eax + 0xdc], edx
jmp 0x100b1b55
jmp 0x100b1b47
mov eax, dword [esi + 0x58]
mov ecx, dword [eax]
mov ecx, dword [ecx]
mov dword [eax], ecx
jmp 0x100b1adc
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0x9c9cf30c
sub edi, 1
add edi, 0x9c9cf30c
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x100b1bcb
jmp 0x100b217f
mov eax, 0
mov ecx, 0xffffffff
mov edx, dword [esi + 0x24]
mov edi, dword [edx + 0x298]
xor ecx, 8
mov ebx, edi
xor ebx, ecx
and ebx, edi
cmp ebx, 0
setne cl
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
sub eax, 1
mov edx, edi
add edx, eax
imul edi, edx
and edi, 1
cmp edi, 0
sete ch
cmp ebx, 0xa
setl al
mov ah, ch
and ah, al
xor ch, al
or ah, ch
test ah, 1
mov byte [esi + 0x17], cl
jne 0x100b1c3c
jmp 0x100b217f
mov al, byte [esi + 0x17]
test al, 1
jne 0x100b1c4c
jmp 0x100b1ff0
mov eax, 0
mov ecx, eax
add ecx, 0x10
sub eax, ecx
mov ecx, dword [esi + 0x54]
mov dword [ecx], 0
mov edx, dword [esi + 0x7c]
mov edi, dword [edx]
mov edi, dword [edi + 0x1c]
add edi, eax
mov eax, dword [esi + 0x50]
mov dword [eax], edi
mov edi, dword [eax]
add edi, 0x68
mov ebx, dword [esi + 0x4c]
mov dword [ebx], edi
mov eax, dword [esi + 0x4c]
mov ecx, dword [eax]
cmp dword [ecx + 8], 0
je 0x100b1cb8
mov eax, 0xffffffff
mov ecx, dword [esi + 0x4c]
mov edx, dword [ecx]
mov edx, dword [edx + 8]
xor eax, 0xfffffff8
mov edi, edx
xor edi, eax
and edi, edx
mov eax, dword [esi + 0x54]
mov dword [eax], edi
mov edx, dword [eax]
mov dword [ecx], edx
jmp 0x100b1c80
lea eax, [0x1010ea44]
sub esp, 8
mov ecx, dword [esi + 0x44]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.10065f00
add esp, 8
mov ecx, dword [esi + 0x44]
call fcn.1002b920
mov ecx, dword [esi + 0x74]
mov edx, dword [ecx]
sub esp, 8
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.100cd090
add esp, 8
mov dword [esi + 0x10], eax
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xa541a54e
sub edx, 1
add edx, 0xa541a54e
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100b1d42
jmp 0x100b2184
mov ecx, dword [esi + 0x44]
call fcn.1002b850
mov ecx, dword [esi + 0x48]
mov eax, dword [esi + 0x10]
mov dword [ecx], eax
cmp dword [ecx], 0
setne dl
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
mov eax, edi
add eax, 0xc188f072
sub eax, 1
sub eax, 0xc188f072
imul edi, eax
and edi, 1
cmp edi, 0
sete dh
cmp ebx, 0xa
setl al
mov ah, dh
and ah, al
xor dh, al
or ah, dh
test ah, 1
mov byte [esi + 0xf], dl
jne 0x100b1dac
jmp 0x100b2184
mov al, byte [esi + 0xf]
test al, 1
jne 0x100b1dbc
jmp 0x100b1eff
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x2f7db9f2
sub edx, 1
sub edx, 0x2f7db9f2
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100b1e09
jmp 0x100b2199
mov eax, 0
mov ecx, dword [esi + 0x74]
mov edx, dword [ecx]
mov edi, dword [esi + 0x48]
mov ebx, dword [edi]
mov ebx, dword [ebx + 0xc]
mov ecx, eax
sub ecx, ebx
sub edx, ecx
mov ecx, dword [esi + 0x40]
mov dword [ecx], edx
mov edx, dword [esi + 0x74]
mov ebx, dword [edx]
mov ecx, dword [edi]
mov ecx, dword [ecx + 0xc]
sub eax, ecx
sub ebx, eax
mov eax, dword [edi]
mov eax, dword [eax + 8]
add ebx, 0x347e4efc
add ebx, eax
sub ebx, 0x347e4efc
mov eax, dword [esi + 0x3c]
mov dword [eax], ebx
mov ecx, dword [esi + 0x54]
mov ebx, dword [ecx]
mov eax, dword [esi + 0x34]
mov dword [eax], ebx
mov ebx, dword [esi + 0x3c]
mov eax, dword [ebx]
mov ecx, dword [esi + 0x40]
mov ecx, dword [ecx]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov eax, dword [esi + 0x34]
mov dword [esp + 8], eax
call fcn.10052e10
add esp, 0xc
mov ecx, dword [esi + 0x38]
mov dword [ecx], eax
mov eax, dword [ecx]
mov edx, dword [esi + 0x3c]
cmp eax, dword [edx]
setne al
mov edi, dword [0x101537c8]
mov ebx, dword [0x101537c4]
mov ecx, edi
sub ecx, 0xf1318b4f
sub ecx, 1
add ecx, 0xf1318b4f
imul edi, ecx
and edi, 1
cmp edi, 0
sete ah
cmp ebx, 0xa
setl cl
mov ch, ah
and ch, cl
xor ah, cl
or ch, ah
test ch, 1
mov byte [esi + 0xe], al
jne 0x100b1edc
jmp 0x100b2199
mov al, byte [esi + 0xe]
test al, 1
jne 0x100b1eec
jmp 0x100b1efa
mov eax, dword [esi + 0x38]
mov ecx, dword [eax]
mov edx, dword [esi + 0x24]
mov dword [edx + 0xe0], ecx
jmp 0x100b1eff
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0xbf6f6cc0
sub edi, 1
sub edi, 0xbf6f6cc0
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x100b1f75
jmp 0x100b2213
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0x70d85705
sub edi, 1
add edi, 0x70d85705
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x100b1feb
jmp 0x100b2213
jmp 0x100b1ff0
mov eax, 0
mov ecx, eax
add ecx, 8
sub eax, ecx
mov ecx, 0x1c
mov edx, dword [esi + 0x30]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], 0
mov dword [esp + 8], 0x1c
mov dword [esi + 8], eax
mov dword [esi + 4], ecx
call fcn.10020350
add esp, 0xc
mov eax, dword [esi + 0x7c]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x14]
mov edx, dword [esi + 8]
add ecx, edx
mov edi, dword [esi + 0x2c]
mov dword [edi], ecx
mov ecx, dword [0x10150d38]
mov ebx, dword [edi]
sub esp, 0xc
mov eax, esp
mov edx, dword [esi + 0x30]
mov dword [eax + 4], edx
mov dword [eax], ebx
mov dword [eax + 8], 0x1c
call ecx
cmp eax, 0
je 0x100b2075
mov eax, dword [esi + 0x30]
mov ecx, dword [eax + 4]
mov edx, dword [esi + 0x24]
mov dword [edx + 0xe8], ecx
mov eax, dword [esi + 0x74]
mov ecx, dword [eax]
sub esp, 4
mov edx, esp
mov dword [edx], ecx
mov ecx, dword [esi + 0x24]
call fcn.100ef020
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x61e4898b
sub edx, 1
add edx, 0x61e4898b
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100b20d6
jmp 0x100b2218
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0x6491b570
sub edi, 1
add edi, 0x6491b570
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x100b214c
jmp 0x100b2218
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, 4
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x88]
mov dword [eax], ecx
jmp 0x100b16e7
mov eax, dword [esi + 0x78]
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x3c]
mov edx, dword [esi + 0x58]
mov dword [edx], ecx
jmp 0x100b1a79
jmp 0x100b1bcb
mov ecx, dword [esi + 0x44]
call fcn.1002b850
mov ecx, dword [esi + 0x48]
mov eax, dword [esi + 0x10]
mov dword [ecx], eax
jmp 0x100b1d42
mov eax, 0
mov ecx, dword [esi + 0x74]
mov edx, dword [ecx]
mov edi, dword [esi + 0x48]
mov ebx, dword [edi]
mov ebx, dword [ebx + 0xc]
mov ecx, eax
sub ecx, ebx
sub edx, ecx
mov ecx, dword [esi + 0x40]
mov dword [ecx], edx
mov edx, dword [esi + 0x74]
mov ebx, dword [edx]
mov ecx, dword [edi]
mov ecx, dword [ecx + 0xc]
sub ebx, 0x5fc2cac
add ebx, ecx
add ebx, 0x5fc2cac
mov ecx, dword [edi]
mov ecx, dword [ecx + 8]
sub eax, ecx
sub ebx, eax
mov eax, dword [esi + 0x3c]
mov dword [eax], ebx
mov ecx, dword [esi + 0x54]
mov ebx, dword [ecx]
mov eax, dword [esi + 0x34]
mov dword [eax], ebx
mov ebx, dword [esi + 0x3c]
mov eax, dword [ebx]
mov ecx, dword [esi + 0x40]
mov ecx, dword [ecx]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov eax, dword [esi + 0x34]
mov dword [esp + 8], eax
call fcn.10052e10
add esp, 0xc
mov ecx, dword [esi + 0x38]
mov dword [ecx], eax
jmp 0x100b1e09
jmp 0x100b1f75
jmp 0x100b20d6