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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x220
mov eax, dword [ebp + 8]
mov dword [esp + 0x214], eax
lea ecx, [esp + 0x1a0]
call fcn.100c4030
lea ecx, [0x10147ce4]
lea edx, [esp + 0xb0]
lea esi, [0x1013f9ec]
mov edi, 0xb8
lea ebx, [esp + 0xe0]
mov dword [esp + 0x19c], 0
mov dword [esp], ebx
mov dword [esp + 4], esi
mov dword [esp + 8], 0xb8
mov dword [esp + 0x90], eax
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x88], edx
mov dword [esp + 0x84], edi
call fcn.1001fd00
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
mov ecx, dword [esp + 0x88]
mov dword [esp + 4], ecx
call fcn.100cbf10
mov byte [esp + 0x83], al
mov al, byte [esp + 0x83]
test al, 1
jne 0x100fab27
jmp 0x100faa47
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x5a72a593
sub edx, 1
add edx, 0x5a72a593
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 0x100faa94
jmp 0x100fb567
mov al, 1
mov ecx, dword [0x101529f4]
mov dword [esp + 0x218], ecx
mov dword [esp + 0xa4], 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
sub esi, 0xe796774c
sub esi, 1
add esi, 0xe796774c
imul ecx, esi
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 0x100fab22
jmp 0x100fb567
jmp 0x100fb47a
mov eax, 0
mov ecx, 2
mov dword [esp], 0
mov dword [esp + 4], 2
mov dword [esp + 0x7c], eax
mov dword [esp + 0x78], ecx
call fcn.100e4170
mov dword [esp + 0x74], eax
lea eax, [esp + 0xb0]
mov ecx, dword [esp + 0x74]
mov dword [esp + 0xa0], ecx
mov edx, dword [esp + 0xa0]
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.100aa980
mov dword [esp + 0x70], eax
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0xffd27bc
sub edx, 1
sub edx, 0xffd27bc
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 0x100fabc7
jmp 0x100fb583
mov al, 1
mov ecx, 0
mov edx, dword [esp + 0x70]
mov dword [esp + 0x9c], edx
cmp dword [esp + 0x9c], 0
setne ah
mov esi, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, esi
add ebx, ecx
imul esi, ebx
and esi, 1
cmp esi, 0
sete cl
cmp edi, 0xa
setl ch
mov dl, cl
xor dl, 1
mov dh, ch
xor dh, 1
xor al, 0
mov bl, dl
and bl, 0
and cl, al
mov bh, dh
and bh, 0
and ch, al
or bl, cl
or bh, ch
xor bl, bh
or dl, dh
xor dl, 1
or al, 0
and dl, al
or bl, dl
test bl, 1
mov byte [esp + 0x6f], ah
jne 0x100fac55
jmp 0x100fb583
mov al, byte [esp + 0x6f]
test al, 1
jne 0x100fac66
jmp 0x100fb448
lea eax, [0x1014c17c]
mov ecx, 1
mov edx, dword [esp + 0xa0]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 1
mov dword [esp + 0x68], ecx
call fcn.100a9760
mov dword [esp + 0x64], eax
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
add esi, 0x1f4f5502
sub esi, 1
sub esi, 0x1f4f5502
imul ecx, esi
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 0x100fad0a
jmp 0x100fb593
mov eax, 0
lea ecx, [esp + 0xe0]
mov dword [esp + 0x98], ecx
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100fad62
jmp 0x100fb593
jmp 0x100fad67
mov eax, dword [esp + 0x98]
cmp dword [eax], 0
je 0x100fae86
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, ecx
sub esi, 0x1b4f0549
sub esi, 1
add esi, 0x1b4f0549
imul ecx, esi
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 0x100fadf0
jmp 0x100fb5a6
mov eax, 0
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xd4]
mov esi, eax
sub esi, edx
add ecx, esi
mov edx, dword [esp + 0x98]
mov esi, dword [edx + 4]
sub esi, 0xb7695e47
add esi, ecx
add esi, 0xb7695e47
mov dword [edx + 4], esi
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100fae69
jmp 0x100fb5a6
jmp 0x100fae6e
mov eax, dword [esp + 0x98]
add eax, 8
mov dword [esp + 0x98], eax
jmp 0x100fad67
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100faed0
jmp 0x100fb5e5
mov eax, 0xffffffff
mov ecx, dword [esp + 0x214]
xor ecx, 0xffffffff
mov edx, eax
xor edx, 0x40000
xor eax, 0x3c66c2dd
or ecx, edx
or eax, 0x3c66c2dd
xor ecx, 0xffffffff
and ecx, eax
cmp ecx, 0
setne bl
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x15c89a3a
sub edx, 1
sub edx, 0x15c89a3a
imul eax, edx
and eax, 1
cmp eax, 0
sete bh
cmp ecx, 0xa
setl al
mov ah, bh
and ah, al
xor bh, al
or ah, bh
test ah, 1
mov byte [esp + 0x63], bl
jne 0x100faf59
jmp 0x100fb5e5
mov al, byte [esp + 0x63]
test al, 1
jne 0x100faf6a
jmp 0x100fb120
mov eax, 0xffff
mov dword [esp], 0xffff
mov dword [esp + 0x5c], eax
call fcn.100c4260
mov dword [esp + 0x58], eax
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100fafcd
jmp 0x100fb5ea
mov al, 1
mov ecx, 0
mov edx, 0xffffffff
mov esi, dword [esp + 0x214]
mov edi, esi
xor edi, 0xffffffff
mov ebx, dword [esp + 0x58]
xor ebx, 0xffffffff
xor edx, 0x39f9fba4
mov byte [esp + 0x57], al
mov eax, edi
and eax, 0x39f9fba4
and esi, edx
mov dword [esp + 0x50], eax
mov eax, ebx
and eax, 0x39f9fba4
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x58]
and eax, edx
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x50]
or eax, esi
mov esi, dword [esp + 0x4c]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x48]
or esi, eax
mov eax, dword [esp + 0x44]
xor eax, esi
or edi, ebx
xor edi, 0xffffffff
or edx, 0x39f9fba4
and edi, edx
or eax, edi
mov dword [esp + 0x214], eax
mov eax, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub ecx, 1
mov esi, eax
add esi, ecx
imul eax, esi
and eax, 1
cmp eax, 0
sete al
cmp edx, 0xa
setl ah
mov cl, al
xor cl, 1
mov ch, ah
xor ch, 1
mov dl, byte [esp + 0x57]
xor dl, 1
mov dh, cl
and dh, 1
and al, dl
mov bl, ch
and bl, 1
and ah, dl
or dh, al
or bl, ah
xor dh, bl
or cl, ch
xor cl, 1
or dl, 1
and cl, dl
or dh, cl
test dh, 1
jne 0x100fb0be
jmp 0x100fb5ea
mov eax, 0xffff
mov dword [esp], 0xffff
mov dword [esp + 0x40], eax
call fcn.100c4260
mov dword [esp + 0x3c], eax
mov eax, 0xffffffff
mov ecx, dword [esp + 0x3c]
and ecx, 0xffff0000
mov edx, dword [esp + 0x3c]
xor edx, 0xffff0000
or ecx, edx
mov edx, dword [esp + 0x214]
xor edx, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xa03a0dee
or edx, ecx
or eax, 0xa03a0dee
xor edx, 0xffffffff
and edx, eax
mov dword [esp + 0x214], edx
lea eax, [fcn.100c4260]
lea ecx, [esp + 0xe0]
mov edx, ecx
add edx, 0xb8
add edx, 0xfffffff8
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.100998c0
lea eax, [esp + 0xe0]
mov dword [esp + 0x94], eax
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xf5fbae51
sub edx, 1
add edx, 0xf5fbae51
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 0x100fb1a6
jmp 0x100fb609
mov eax, dword [esp + 0x94]
cmp dword [eax], 0
setne cl
mov eax, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov esi, eax
add esi, 0x969abd30
sub esi, 1
sub esi, 0x969abd30
imul eax, esi
and eax, 1
cmp eax, 0
sete ch
cmp edx, 0xa
setl bl
mov bh, ch
and bh, bl
xor ch, bl
or bh, ch
test bh, 1
mov byte [esp + 0x3b], cl
jne 0x100fb208
jmp 0x100fb609
mov al, byte [esp + 0x3b]
test al, 1
jne 0x100fb219
jmp 0x100fb3c6
mov eax, 0xffffffff
mov ecx, dword [esp + 0x94]
mov ecx, dword [ecx]
mov edx, dword [esp + 0x214]
xor ecx, 0xffffffff
xor edx, 0xffffffff
xor eax, 0xeeb02d47
or ecx, edx
or eax, 0xeeb02d47
xor ecx, 0xffffffff
and ecx, eax
cmp ecx, 0
je 0x100fb3a9
mov ecx, dword [esp + 0x94]
mov eax, esp
lea edx, [esp + 0x1a0]
mov dword [eax], edx
call fcn.10099b20
sub esp, 4
mov dword [esp + 0x34], eax
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0xd15c6ef2
sub edx, 1
sub edx, 0xd15c6ef2
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 0x100fb2c5
jmp 0x100fb60e
mov al, 1
mov ecx, 0xffffffff
mov edx, dword [esp + 0x19c]
mov esi, edx
xor esi, 0xffffffff
mov edi, dword [esp + 0x34]
xor edi, 0xffffffff
xor ecx, 0x37ddfffe
mov ebx, esi
and ebx, 0x37ddfffe
and edx, ecx
mov byte [esp + 0x33], al
mov eax, edi
and eax, 0x37ddfffe
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x34]
and eax, ecx
or ebx, edx
mov edx, dword [esp + 0x2c]
or edx, eax
xor ebx, edx
or esi, edi
xor esi, 0xffffffff
or ecx, 0x37ddfffe
and esi, ecx
or ebx, esi
mov dword [esp + 0x19c], ebx
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x4d05655a
sub edx, 1
sub edx, 0x4d05655a
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl ah
mov cl, al
xor cl, 1
mov ch, ah
xor ch, 1
mov dl, byte [esp + 0x33]
xor dl, 1
mov dh, cl
and dh, 1
and al, dl
mov bl, ch
and bl, 1
and ah, dl
or dh, al
or bl, ah
xor dh, bl
or cl, ch
xor cl, 1
or dl, 1
and cl, dl
or dh, cl
test dh, 1
jne 0x100fb3a4
jmp 0x100fb60e
jmp 0x100fb3a9
jmp 0x100fb3ae
mov eax, dword [esp + 0x94]
add eax, 8
mov dword [esp + 0x94], eax
jmp 0x100fb159
mov eax, 0xffffffff
mov ecx, dword [0x10150b0c]
mov edx, dword [esp + 0x9c]
xor edx, 0xffffffff
mov esi, eax
xor esi, 0xfffffffc
xor eax, 0x3e6c9732
or edx, esi
or eax, 0x3e6c9732
xor edx, 0xffffffff
and edx, eax
mov eax, esp
mov dword [eax], edx
mov dword [eax + 8], 0x8000
mov dword [eax + 4], 0
call ecx
sub esp, 0xc
mov dword [esp + 0x28], eax
lea eax, [0x1014c17c]
mov ecx, 0
mov edx, dword [esp + 0xa0]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], 0
mov dword [esp + 0x24], ecx
call fcn.100a9760
mov dword [esp + 0x20], eax
jmp 0x100fb448
mov eax, dword [esp + 0x19c]
mov ecx, dword [0x101529f4]
mov edx, ecx
and edx, eax
xor ecx, eax
or edx, ecx
mov dword [0x101529f4], edx
mov eax, dword [0x101529f4]
mov dword [esp + 0x218], eax
mov dword [esp + 0xa4], 1
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov esi, ecx
add esi, eax
imul ecx, esi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100fb4c4
jmp 0x100fb680
lea ecx, [esp + 0x1a0]
call fcn.1001f530
mov al, 1
mov ecx, 0
mov edx, dword [esp + 0x218]
mov esi, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, esi
add ebx, ecx
imul esi, ebx
and esi, 1
cmp esi, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov bl, cl
xor bl, 1
xor al, 1
mov bh, ch
and bh, 1
and ah, al
mov byte [esp + 0x1f], al
mov al, bl
and al, 1
mov byte [esp + 0x1e], al
mov al, byte [esp + 0x1f]
and cl, al
or bh, ah
mov ah, byte [esp + 0x1e]
or ah, cl
xor bh, ah
or ch, bl
xor ch, 1
or al, 1
and ch, al
or bh, ch
test bh, 1
mov dword [esp + 0x18], edx
jne 0x100fb55b
jmp 0x100fb680
mov eax, dword [esp + 0x18]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [0x101529f4]
mov dword [esp + 0x218], eax
mov dword [esp + 0xa4], 1
jmp 0x100faa94
mov eax, dword [esp + 0x70]
mov dword [esp + 0x9c], eax
jmp 0x100fabc7
lea eax, [esp + 0xe0]
mov dword [esp + 0x98], eax
jmp 0x100fad0a
mov eax, 0
mov ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0xd4]
add ecx, 0x8ffdc13e
sub ecx, edx
sub ecx, 0x8ffdc13e
mov edx, dword [esp + 0x98]
mov esi, dword [edx + 4]
mov edi, eax
sub edi, esi
mov esi, eax
sub esi, ecx
add edi, esi
sub eax, edi
mov dword [edx + 4], eax
jmp 0x100fadf0
jmp 0x100faed0
mov eax, dword [esp + 0x214]
mov ecx, eax
mov edx, dword [esp + 0x58]
and ecx, edx
xor eax, edx
or ecx, eax
mov dword [esp + 0x214], ecx
jmp 0x100fafcd
jmp 0x100fb1a6
mov eax, 0xffffffff
mov ecx, dword [esp + 0x19c]
mov edx, ecx
xor edx, 0xffffffff
mov esi, dword [esp + 0x34]
xor esi, 0xffffffff
xor eax, 0x13bb20e
mov edi, edx
and edi, 0x13bb20e
and ecx, eax
mov ebx, esi
and ebx, 0x13bb20e
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x14]
and eax, ecx
mov ecx, dword [esp + 0x10]
or edi, ecx
or ebx, eax
xor edi, ebx
or edx, esi
xor edx, 0xffffffff
mov eax, dword [esp + 0x14]
or eax, 0x13bb20e
and edx, eax
or edi, edx
mov dword [esp + 0x19c], edi
jmp 0x100fb2c5
lea ecx, [esp + 0x1a0]
call fcn.1001f530
jmp 0x100fb4c4