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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x7c
mov eax, dword [esp + 0x90]
mov ecx, dword [eax + 0xc]
mov dword [esp + 0x2c], ecx
mov ecx, dword [eax + 8]
mov dword [esp + 0x30], ecx
mov ecx, dword [eax]
mov dword [esp + 0x38], ecx
mov ecx, dword [eax + 4]
movzx eax, byte [eax + 0x10]
mov ah, 0x80
sub ah, al
mov dword [esp + 0x34], ecx
mov byte [esp + 0xd], al
mov dword [esp + 0x78], 0xffffffff
mov dword [esp + 0x74], 0xffffffff
mov dword [esp + 0x70], 0xffffffff
mov dword [esp + 0x6c], 0xffffffff
mov dword [esp + 0x68], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x5c], 0
mov cl, ah
mov al, ah
shr cl, 3
and al, 7
and cl, 0xf
neg cl
movsx ebx, cl
mov ecx, eax
mov ebp, dword [esp + ebx + 0x70]
mov esi, dword [esp + ebx + 0x74]
mov edi, dword [esp + ebx + 0x78]
mov edx, ebp
shld edi, esi, cl
shl esi, cl
not cl
shr edx, 1
shr edx, cl
mov ecx, eax
or edx, esi
mov esi, dword [esp + ebx + 0x6c]
mov ebx, esi
shld ebp, esi, cl
shl ebx, cl
xor ecx, ecx
test ah, ah
cmovs edi, ecx
cmovs ebp, ecx
cmovs ebx, ecx
cmovs edx, ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebp
bswap edi
and edi, dword [esp + 0x38]
movzx ebx, word [ecx + 6]
movzx eax, word [ecx + 2]
movzx ebp, word [ecx]
movzx esi, word [ecx + 4]
mov word [esp + 0xa], bx
movzx ebx, word [ecx + 8]
mov word [esp + 0x18], ax
rol ax, 8
mov word [esp + 0x1a], bp
mov word [esp + 0x14], si
rol si, 8
rol bp, 8
mov word [esp + 0x16], ax
mov word [esp + 0x12], si
mov word [esp + 8], bx
movzx ebx, word [ecx + 0xa]
movzx eax, word [esp + 8]
mov word [esp + 6], bx
movzx ebx, word [ecx + 0xc]
movzx ecx, word [ecx + 0xe]
rol ax, 8
mov word [esp + 0xe], ax
movzx eax, word [esp + 6]
mov word [esp + 4], bx
movzx ebx, word [esp + 0xa]
mov word [esp + 2], cx
movzx ecx, word [esp + 4]
rol ax, 8
rol bx, 8
mov word [esp + 0x10], bx
movzx ebx, word [esp + 2]
rol cx, 8
mov word [esp + 0x28], cx
rol bx, 8
cmp word [esp + 0x1a], di
jne 0x100f04e9
shr edi, 0x10
cmp word [esp + 0x18], di
jne 0x100f04f6
bswap edx
and edx, dword [esp + 0x34]
cmp word [esp + 0x14], dx
jne 0x100f0506
shr edx, 0x10
cmp word [esp + 0xa], dx
jne 0x100f0518
mov edi, dword [esp + 0x20]
bswap edi
and edi, dword [esp + 0x30]
cmp word [esp + 8], di
jne 0x100f052a
shr edi, 0x10
cmp word [esp + 6], di
jne 0x100f053f
mov edi, dword [esp + 0x1c]
bswap edi
and edi, dword [esp + 0x2c]
cmp word [esp + 4], di
jne 0x100f052f
shr edi, 0x10
cmp word [esp + 2], di
je 0x100f054a
mov ecx, ebx
rol di, 8
cmp di, cx
jbe 0x100f054a
jmp 0x100f0538
rol di, 8
mov ecx, ebp
cmp di, cx
jbe 0x100f054a
jmp 0x100f0538
movzx ecx, word [esp + 0x16]
rol di, 8
cmp di, cx
jbe 0x100f054a
jmp 0x100f0538
movzx ecx, word [esp + 0x12]
rol dx, 8
mov edi, edx
cmp di, cx
jbe 0x100f054a
jmp 0x100f0538
movzx ecx, word [esp + 0x10]
rol dx, 8
mov edi, edx
cmp di, cx
jbe 0x100f054a
jmp 0x100f0538
movzx ecx, word [esp + 0xe]
rol di, 8
cmp di, cx
jbe 0x100f054a
xor eax, eax
jmp 0x100f071d
rol di, 8
mov ecx, eax
cmp di, cx
ja 0x100f0538
mov word [esp + 0x2a], bp
mov word [esp + 0x1c], ax
mov word [esp + 0x26], bx
mov dword [esp + 0x58], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x48], 0xffffffff
mov dword [esp + 0x44], 0xffffffff
mov dword [esp + 0x40], 0xffffffff
mov dword [esp + 0x3c], 0xffffffff
mov ah, byte [esp + 0xd]
mov cl, ah
mov al, ah
shr cl, 3
and al, 7
and cl, 0xf
movzx ebp, cl
mov ecx, eax
mov ebx, dword [esp + ebp + 0x44]
mov esi, dword [esp + ebp + 0x48]
mov edx, dword [esp + ebp + 0x40]
mov edi, ebx
mov dword [esp + 0x20], edx
shr edx, cl
add ebx, ebx
shrd edi, esi, cl
not cl
mov ebp, dword [esp + ebp + 0x3c]
shl ebx, cl
mov ecx, eax
or ebx, edx
mov edx, dword [esp + 0x20]
shr esi, cl
shrd ebp, edx, cl
xor ecx, ecx
test ah, ah
mov edx, ebx
mov ebx, edi
cmovs esi, ecx
cmovs edx, ecx
cmovs ebx, ecx
cmovs ebp, ecx
xor eax, eax
bswap esi
or esi, dword [esp + 0x38]
mov ecx, esi
rol cx, 8
cmp word [esp + 0x1a], si
setne al
cmp word [esp + 0x2a], cx
mov ecx, 0xff
cmovb eax, ecx
test al, al
jne 0x100f0718
shr esi, 0x10
mov edi, edx
xor eax, eax
mov edx, esi
rol dx, 8
cmp word [esp + 0x18], si
setne al
cmp word [esp + 0x16], dx
cmovb eax, ecx
test al, al
jne 0x100f0718
bswap ebx
xor eax, eax
or ebx, dword [esp + 0x34]
mov ecx, ebx
rol cx, 8
cmp word [esp + 0x14], bx
setne al
cmp word [esp + 0x12], cx
mov ecx, 0xff
cmovb eax, ecx
test al, al
jne 0x100f0718
shr ebx, 0x10
xor eax, eax
mov edx, ebx
rol dx, 8
cmp word [esp + 0xa], bx
setne al
cmp word [esp + 0x10], dx
cmovb eax, ecx
test al, al
jne 0x100f0718
bswap edi
xor eax, eax
or edi, dword [esp + 0x30]
mov ecx, edi
rol cx, 8
cmp word [esp + 8], di
setne al
cmp word [esp + 0xe], cx
mov ecx, 0xff
cmovb eax, ecx
test al, al
jne 0x100f0718
mov esi, edi
xor eax, eax
shr esi, 0x10
mov edx, esi
rol dx, 8
cmp word [esp + 6], si
setne al
cmp word [esp + 0x1c], dx
cmovb eax, ecx
test al, al
jne 0x100f0718
bswap ebp
xor eax, eax
or ebp, dword [esp + 0x2c]
mov ecx, ebp
rol cx, 8
cmp word [esp + 4], bp
setne al
cmp word [esp + 0x28], cx
mov ecx, 0xff
cmovb eax, ecx
test al, al
jne 0x100f0718
shr ebp, 0x10
xor eax, eax
mov edx, ebp
rol dx, 8
cmp word [esp + 2], bp
setne al
cmp word [esp + 0x26], dx
cmovb eax, ecx
cmp al, 1
setne al
add esp, 0x7c
pop esi
pop edi
pop ebx
pop ebp
ret