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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x10c
mov ebp, ecx
mov eax, dword [0x10023040]
xor eax, esp
mov dword [esp + 0x108], eax
mov eax, dword [edx + 0x10]
mov dword [esp + 0x94], eax
lea eax, [esp + 0x104]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
lea eax, [esp + 0x101]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
lea eax, [ecx + 0x14]
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], ecx
mov eax, dword [esp + 0x2c]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov eax, dword [esp + 0x28]
mov dword [eax], 0xf
mov dword [esp + 0xdc], edx
mov dword [esp + 0xd4], edx
lea eax, [edx + 0x14]
mov dword [esp + 0xe0], eax
cmp dword [esp + 0x94], 0
sete byte [esp + 0x16]
lea eax, [ecx + 0x10]
mov dword [esp + 0x74], eax
mov eax, 0x7f92c83
mov dword [esp + 0x48], ecx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x4c], ecx
jmp 0x1000f400
mov eax, dword [esp + 0x70]
movzx eax, byte [esp + eax + 0x101]
mov byte [esp + 0xd], al
mov eax, 0x9365848c
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x90], ecx
nop word [eax + eax]
cmp eax, 0xe5134a9
jg 0x1000f4a0
cmp eax, 0xf112532f
jle 0x1000f510
cmp eax, 0xfefa6437
jle 0x1000f5f6
cmp eax, 0x28c2053
jle 0x1000f79e
cmp eax, 0x28c2054
je 0x1000f9fa
cmp eax, 0x7f92c83
je 0x1000fa10
cmp eax, 0x8e28eb0
jne 0x1000f400
mov eax, 0x100cf0bc
mov ecx, dword [0x100cf0cc]
mov dword [esp + 0xb8], ecx
cmp dword [0x100cf0d0], 0x10
jb 0x1000f469
mov eax, dword [0x100cf0bc]
mov dword [esp + 0xbc], eax
cmp dword [esp + 0xb8], 0
sete byte [esp + 0x17]
mov eax, dword [esp + 0xbc]
mov dword [esp + 0xec], eax
mov dword [esp + 0x84], 0
mov eax, 0xfcd1f920
jmp 0x1000f400
cmp eax, 0x40dafb75
jle 0x1000f5a0
cmp eax, 0x597e2cf4
jle 0x1000f653
cmp eax, 0x6f726037
jle 0x1000f7eb
cmp eax, 0x6f726038
je 0x1000fa27
cmp eax, 0x77dc9783
je 0x1000fa8c
cmp eax, 0x7e0e8822
jne 0x1000f400
mov eax, dword [esp + 0x60]
lea ecx, [eax + 1]
mov edx, dword [esp + 0x20]
mov dword [edx], ecx
mov edx, dword [esp + 0xac]
mov ecx, dword [esp + 0x5c]
cmp edx, 0x10
jae 0x1000ff43
mov ecx, dword [esp + 0x2c]
jmp 0x1000ff45
cmp eax, 0xaff0f27a
jle 0x1000f6b4
cmp eax, 0xc90fffcf
jle 0x1000f817
cmp eax, 0xc90fffd0
je 0x1000fb43
cmp eax, 0xdad7efaa
jne 0x10010000
mov eax, dword [esp + 0xc4]
movsx eax, byte [eax]
push dword [esp + 0xb8]
push eax
push dword [esp + 0xc4]
call fcn.10011740
add esp, 0xc
mov ecx, dword [esp + 0xec]
mov edx, ecx
xor edx, eax
add edx, eax
mov edi, ecx
not edi
or edi, eax
add edi, edx
mov edx, eax
not edx
or edx, ecx
add edx, edi
sub edx, ecx
add edx, 2
mov dword [esp + 0x80], edx
test eax, eax
mov eax, 0x1000a61
mov ecx, 0x3c1364a2
cmove eax, ecx
jmp 0x1000f400
cmp eax, 0x2b71fab5
jg 0x1000f700
cmp eax, 0x1760be0c
jg 0x1000f87a
cmp eax, 0xe5134aa
je 0x1000f3d7
cmp eax, 0x12ad1144
jne 0x1000f400
mov eax, dword [esp + 0x64]
lea ecx, [eax + 1]
mov edx, dword [esp + 0x20]
mov dword [edx], ecx
mov edx, dword [esp + 0xb0]
mov ecx, dword [esp + 0x5c]
cmp edx, 0x10
jae 0x1000ff5f
mov ecx, dword [esp + 0x2c]
jmp 0x1000ff61
cmp eax, 0xf4bd0ed9
jg 0x1000f925
cmp eax, 0xf1125330
je 0x1000fb6d
cmp eax, 0xf38a0832
jne 0x1000f400
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0x68]
cmp eax, dword [esp + 0xb4]
mov eax, 0x641034f3
mov ecx, 0xc90fffd0
cmovb eax, ecx
jmp 0x1000f400
cmp eax, 0x47345352
jg 0x1000f977
cmp eax, 0x40dafb76
je 0x1000fb9e
cmp eax, 0x435446d8
jne 0x1000f400
mov eax, 0x100cf0bc
mov ecx, dword [0x100cf0cc]
mov dword [esp + 0x30], ecx
cmp dword [0x100cf0d0], 0x10
jb 0x1000f691
mov eax, dword [0x100cf0bc]
mov dword [esp + 0x34], eax
cmp dword [esp + 0x30], 0
mov eax, dword [esp + 0x34]
mov dword [esp + 0x44], eax
mov eax, 0x40dafb76
mov ecx, 0xf1125330
cmove eax, ecx
jmp 0x1000f400
cmp eax, 0x9365848b
jg 0x1000f9a3
cmp eax, 0x864c8973
je 0x1000fca7
cmp eax, 0x904a6651
jne 0x1000f400
mov eax, dword [esp + 0x1c]
movzx eax, byte [esp + 0xa]
mov byte [esp + 0x10], al
movzx eax, byte [esp + 9]
mov byte [esp + 0xf], al
xor esi, esi
mov eax, 0x597e2cf5
movzx ecx, byte [esp + 8]
mov byte [esp + 0xe], cl
jmp 0x1000f400
cmp eax, 0x384b993f
jg 0x1000f9cf
cmp eax, 0x2b71fab6
je 0x1000fcbe
cmp eax, 0x30228c4e
jne 0x1000f400
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x78]
mov byte [eax], dl
movzx eax, byte [esp + 0xc]
shl al, 2
mov ah, byte [esp + 0xb]
mov cl, ah
shr cl, 4
and cl, 3
or cl, al
mov byte [esp + 8], cl
mov al, ah
shl al, 4
mov cl, bh
shr cl, 2
and cl, 0xf
or cl, al
mov byte [esp + 9], cl
mov al, bh
shl al, 6
add al, dl
mov byte [esp + 0xa], al
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x60]
cmp eax, dword [esp + 0xac]
mov eax, 0x523aa4fe
mov ecx, 0x7e0e8822
cmovb eax, ecx
jmp 0x1000f400
cmp eax, 0xfefa6438
je 0x1000fce6
cmp eax, 0x1000a61
jne 0x1000f400
mov eax, dword [esp + 0xc4]
mov ecx, dword [esp + 0x80]
mov byte [eax], cl
mov eax, dword [esp + 0xc0]
add eax, 1
mov dword [esp + 0x84], eax
cmp eax, dword [esp + 0x38]
mov eax, 0xfcd1f920
mov ecx, 0x26431c87
cmove eax, ecx
jmp 0x1000f400
cmp eax, 0x597e2cf5
je 0x1000fd22
cmp eax, 0x641034f3
jne 0x1000f400
movsx edx, byte [esp + 0xa]
mov ecx, ebp
call fcn.10010030
mov eax, 0x904a6651
jmp 0x1000f400
cmp eax, 0xaff0f27b
je 0x1000fd86
cmp eax, 0xb4252549
jne 0x1000f400
mov ecx, dword [esp + 0x6c]
mov eax, ecx
or eax, 1
add eax, ecx
lea edx, [ecx + ecx]
not edx
and edx, 0xfffffffc
add edx, eax
mov eax, ecx
or eax, 0xfffffffe
sub edx, eax
lea eax, [edx + ecx]
add ecx, edx
add ecx, 2
mov edx, dword [esp + 0xcc]
mov dword [edx], ecx
mov edx, dword [esp + 0xd0]
mov ecx, dword [esp + 0xf4]
cmp edx, 0x10
jae 0x1000ff7b
mov ecx, dword [esp + 0x2c]
jmp 0x1000ff7d
cmp eax, 0x1760be0d
je 0x1000fdd9
cmp eax, 0x26431c87
jne 0x1000f400
mov eax, dword [esp + 0x18]
movzx ecx, byte [eax]
shl cl, 2
movzx eax, byte [esp + 0x105]
mov edx, eax
shr dl, 4
and dl, 3
or dl, cl
mov byte [esp + 0x14], dl
mov ecx, dword [esp + 0x24]
movzx edx, byte [esp + 0x14]
mov byte [ecx], dl
shl al, 4
movzx edx, byte [esp + 0x106]
shr dl, 2
mov ecx, edx
and cl, 0xf
mov ah, dl
add ah, dl
or ah, 0xe0
add ah, cl
or dl, 0xf0
sub ah, dl
not cl
add cl, ah
add cl, 0x11
mov edx, eax
and dl, cl
mov ah, cl
or ah, al
sub ah, dl
add ah, al
not al
or al, cl
add al, ah
add al, 1
mov byte [esp + 0x102], al
mov eax, dword [esp + 0x38]
add eax, 0xffffffff
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0x38]
cmp eax, 2
mov eax, 0xcb377a77
mov ecx, 0x384b9940
cmovge eax, ecx
jmp 0x1000f400
cmp eax, 0xf4bd0eda
je 0x1000fe14
cmp eax, 0xfcd1f920
jne 0x1000f400
mov eax, dword [esp + 0x84]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xc0]
lea ecx, [esp + 0x104]
add eax, ecx
mov dword [esp + 0xc4], eax
cmp byte [esp + 0x17], 0
mov eax, 0xdad7efaa
mov ecx, 0x3c1364a2
cmovne eax, ecx
jmp 0x1000f400
cmp eax, 0x47345353
je 0x1000fe58
cmp eax, 0x523aa4fe
jne 0x1000f400
movsx edx, byte [esp + 8]
mov ecx, ebp
call fcn.10010030
mov eax, 0xfefa6438
jmp 0x1000f400
cmp eax, 0x9365848c
je 0x1000feb0
cmp eax, 0x95656e8e
jne 0x1000f400
movsx edx, byte [esp + 9]
mov ecx, ebp
call fcn.10010030
mov eax, 0xf38a0832
jmp 0x1000f400
cmp eax, 0x384b9940
je 0x1000ff05
cmp eax, 0x3c1364a2
jne 0x1000f400
mov dword [esp + 0x80], 0xffffffff
mov eax, 0x1000a61
jmp 0x1000f400
movsx edx, byte [esp + 0x15]
mov ecx, ebp
call fcn.10010030
mov eax, 0xf4bd0eda
jmp 0x1000f400
cmp byte [esp + 0x16], 0
mov eax, 0x77dc9783
mov ecx, 0xcb377a77
cmovne eax, ecx
jmp 0x1000f400
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x8c]
mov dword [esp + 0xa4], eax
movzx eax, byte [esp + 0x11]
mov byte [esp + 5], al
movzx eax, byte [esp + 0x12]
mov byte [esp + 6], al
movzx eax, byte [esp + 0x13]
mov byte [esp + 7], al
mov eax, dword [esp + 0x88]
add eax, 0xffffffff
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0xe0]
cmp dword [eax], 0x10
mov eax, dword [esp + 0xe4]
jae 0x1000ff97
mov eax, dword [esp + 0xdc]
jmp 0x1000ff99
mov eax, dword [esp + 0xd4]
mov dword [esp + 0xe4], eax
lea eax, [esp + 0x105]
mov dword [esp + 0x54], eax
lea eax, [esp + 0x106]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x102]
mov dword [esp + 0x98], eax
lea eax, [esp + 0x107]
mov dword [esp + 0x9c], eax
lea eax, [esp + 0x103]
mov dword [esp + 0xa0], eax
lea eax, [esp + 0xfc]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x20], eax
mov dword [esp + 0x5c], ebp
mov eax, dword [esp + 0x24]
movzx eax, byte [eax]
mov byte [esp + 0x11], al
mov eax, dword [esp + 0x98]
movzx eax, byte [eax]
mov byte [esp + 0x12], al
mov eax, dword [esp + 0xa0]
movzx eax, byte [eax]
mov byte [esp + 0x13], al
mov dword [esp + 0x8c], 0
mov eax, 0x6f726038
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x88], ecx
mov dword [esp + 0x7c], 0
jmp 0x1000f400
mov eax, dword [esp + 0x68]
lea ecx, [eax + 1]
mov edx, dword [esp + 0x20]
mov dword [edx], ecx
mov edx, dword [esp + 0xb4]
mov ecx, dword [esp + 0x5c]
cmp edx, 0x10
jae 0x1000ffe4
mov ecx, dword [esp + 0x2c]
jmp 0x1000ffe6
mov eax, dword [esp + 0x18]
mov byte [eax], 0xff
mov eax, dword [esp + 0x54]
mov byte [eax], 0xff
mov eax, dword [esp + 0x58]
mov byte [eax], 0xff
mov al, 0xff
mov dword [esp + 0x48], eax
mov eax, 0x2b71fab6
mov cl, 0xff
mov dword [esp + 0x3c], ecx
mov cl, 0xff
mov dword [esp + 0x4c], ecx
jmp 0x1000f400
mov eax, dword [esp + 0x18]
movsx eax, byte [eax]
push dword [esp + 0x30]
push eax
push dword [esp + 0x3c]
call fcn.10011740
add esp, 0xc
mov edx, dword [esp + 0x44]
mov ecx, edx
not ecx
and ecx, eax
add ecx, eax
or edx, eax
sub ecx, edx
cmp eax, 1
sbb edx, edx
or dl, cl
mov dword [esp + 0x3c], edx
mov eax, dword [esp + 0x18]
mov byte [eax], dl
mov eax, dword [esp + 0x54]
movsx eax, byte [eax]
push dword [esp + 0x30]
push eax
push dword [esp + 0x3c]
call fcn.10011740
add esp, 0xc
mov dword [esp + 0xd8], esi
mov esi, ebp
mov ebp, eax
mov ecx, dword [esp + 0x44]
mov edx, eax
not edx
mov edi, ecx
and edi, edx
add edi, ecx
sub eax, edi
or ecx, ebp
add ecx, eax
add ecx, edx
add cl, 1
cmp ebp, 1
mov ebp, esi
mov esi, dword [esp + 0xd8]
sbb edx, edx
or dl, cl
mov eax, dword [esp + 0x54]
mov byte [eax], dl
mov edi, edx
mov eax, dword [esp + 0x58]
movsx eax, byte [eax]
push dword [esp + 0x30]
push eax
push dword [esp + 0x3c]
call fcn.10011740
add esp, 0xc
mov ecx, eax
sub ecx, dword [esp + 0x44]
cmp eax, 1
sbb ebx, ebx
or bl, cl
mov eax, dword [esp + 0x58]
mov byte [eax], bl
mov eax, dword [esp + 0x9c]
movsx eax, byte [eax]
push dword [esp + 0x30]
push eax
push dword [esp + 0x3c]
call fcn.10011740
add esp, 0xc
mov ecx, eax
sub ecx, dword [esp + 0x44]
mov dword [esp + 0x78], ecx
test eax, eax
mov eax, 0x30228c4e
mov ecx, 0x2b71fab6
cmove eax, ecx
mov dword [esp + 0x48], ebx
mov bh, bl
mov ecx, dword [esp + 0x3c]
mov byte [esp + 0xc], cl
mov ecx, edi
mov dword [esp + 0x4c], edi
mov byte [esp + 0xb], cl
jmp 0x1000f400
cmp dword [esp + 0x38], 0
mov eax, 0x26431c87
mov ecx, 0x8e28eb0
cmovg eax, ecx
jmp 0x1000f400
mov dword [esp + 0x78], 0xffffffff
mov eax, 0x30228c4e
mov ecx, dword [esp + 0x48]
mov bh, cl
mov ecx, dword [esp + 0x3c]
mov byte [esp + 0xc], cl
mov ecx, dword [esp + 0x4c]
mov byte [esp + 0xb], cl
jmp 0x1000f400
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x64]
cmp eax, dword [esp + 0xb0]
mov eax, 0x95656e8e
mov ecx, 0x12ad1144
cmovb eax, ecx
jmp 0x1000f400
cmp dword [esp + 0xa8], 0
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x8c], eax
mov eax, 0x6f726038
mov ecx, 0x1760be0d
cmove eax, ecx
movzx ecx, byte [esp + 0x10]
mov byte [esp + 0x13], cl
movzx edx, byte [esp + 0xf]
mov byte [esp + 0x12], dl
mov ch, byte [esp + 0xe]
mov byte [esp + 0x11], ch
mov dword [esp + 0x7c], esi
mov byte [esp + 4], cl
mov byte [esp + 3], dl
mov byte [esp + 2], ch
mov dword [esp + 0x50], esi
jmp 0x1000f400
movzx eax, byte [esp + 1]
push eax
call fcn.10012c20
add esp, 4
movzx ecx, byte [esp + 1]
and cl, 0xfb
test eax, eax
mov eax, 0x1760be0d
mov edx, 0x47345353
cmovne eax, edx
cmp cl, 0x2b
movzx ecx, byte [esp + 7]
mov byte [esp + 4], cl
movzx ecx, byte [esp + 6]
mov byte [esp + 3], cl
movzx ecx, byte [esp + 5]
mov byte [esp + 2], cl
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x50], ecx
cmove eax, edx
jmp 0x1000f400
mov eax, dword [esp + 0x50]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x24]
movzx ecx, byte [esp + 2]
mov byte [eax], cl
mov eax, dword [esp + 0x98]
movzx ecx, byte [esp + 3]
mov byte [eax], cl
mov eax, dword [esp + 0xa0]
movzx ecx, byte [esp + 4]
mov byte [eax], cl
cmp dword [esp + 0x38], 0
mov eax, 0x864c8973
jmp 0x1000fe4b
mov eax, dword [esp + 0xc8]
mov eax, dword [esp + 0xf8]
lea ecx, [eax + eax]
mov edx, ecx
xor edx, 2
add edx, eax
xor ecx, 0xfffffffc
lea eax, [ecx + edx]
add eax, 3
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xf0]
mov ecx, dword [esp + 0x70]
cmp ecx, eax
mov eax, 0xe5134aa
mov ecx, 0xcb377a77
cmove eax, ecx
jmp 0x1000f400
mov esi, dword [esp + 0x40]
add esi, 1
mov eax, dword [esp + 0x40]
movzx ecx, byte [esp + 1]
mov byte [esp + eax + 0x104], cl
mov eax, dword [esp + 0xa4]
add eax, 1
mov dword [esp + 0xe8], eax
cmp esi, 4
movzx eax, byte [esp + 7]
mov byte [esp + 0x10], al
movzx eax, byte [esp + 6]
mov byte [esp + 0xf], al
movzx eax, byte [esp + 5]
mov byte [esp + 0xe], al
mov eax, 0x597e2cf5
mov ecx, 0x435446d8
cmove eax, ecx
jmp 0x1000f400
mov eax, dword [esp + 0x90]
mov dword [esp + 0xf8], eax
movzx eax, byte [esp + 0xd]
mov byte [esp + 0x15], al
mov eax, dword [esp + 0xc8]
mov eax, dword [esp + 0xcc]
mov eax, dword [eax]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0x6c]
cmp eax, dword [esp + 0xd0]
mov eax, 0x28c2054
mov ecx, 0xb4252549
cmovb eax, ecx
jmp 0x1000f400
lea eax, [esp + 0x100]
mov dword [esp + 0xc8], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0xcc], eax
mov dword [esp + 0xf4], ebp
mov dword [esp + 0x90], 0
mov eax, 0x9365848c
movzx ecx, byte [esp + 0x14]
mov byte [esp + 0xd], cl
jmp 0x1000f400
mov ecx, dword [ecx]
mov edx, dword [esp + 0x60]
mov bl, byte [esp + 8]
mov byte [ecx + edx], bl
mov byte [ecx + eax + 1], 0
mov eax, 0xfefa6438
jmp 0x1000f400
mov ecx, dword [ecx]
mov edx, dword [esp + 0x64]
mov bl, byte [esp + 9]
mov byte [ecx + edx], bl
mov byte [ecx + eax + 1], 0
mov eax, 0xf38a0832
jmp 0x1000f400
mov ecx, dword [ecx]
mov edx, dword [esp + 0x6c]
mov bl, byte [esp + 0x15]
mov byte [ecx + edx], bl
mov byte [ecx + eax + 2], 0
mov eax, 0xf4bd0eda
jmp 0x1000f400
mov eax, dword [eax]
mov ecx, dword [esp + 0xa4]
movzx eax, byte [eax + ecx]
mov byte [esp + 1], al
movzx eax, byte [esp + 1]
cmp al, 0x3d
movzx eax, byte [esp + 7]
mov byte [esp + 4], al
movzx eax, byte [esp + 6]
mov byte [esp + 3], al
movzx eax, byte [esp + 5]
mov byte [esp + 2], al
mov eax, dword [esp + 0x40]
mov dword [esp + 0x50], eax
mov eax, 0xaff0f27b
mov ecx, 0x1760be0d
cmove eax, ecx
jmp 0x1000f400
mov ecx, dword [ecx]
mov edx, dword [esp + 0x68]
mov bl, byte [esp + 0xa]
mov byte [ecx + edx], bl
mov byte [ecx + eax + 1], 0
mov eax, 0x904a6651
jmp 0x1000f400
cmp eax, 0xcb377a77
jne 0x1000f400
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x108]
xor ecx, esp
call fcn.10010c8a
add esp, 0x10c
pop esi
pop edi
pop ebx
pop ebp
ret