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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x24
push ebx
mov eax, edx
mov dword [esp + 0x20], ecx
xor ebx, ebx
mov dword [esp + 0x24], eax
push esi
push edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [eax], ebx
call fcn.100cb480
test eax, eax
jne 0x100cf25d
mov edi, dword [ebp + 8]
cmp byte [0x10166afc], bl
jne 0x100ce9d0
mov dword [esp + 0x14], ebx
jmp 0x100ce9fb
test edi, 0x8000
je 0x100ce9de
mov dword [esp + 0x14], ebx
jmp 0x100ce9fb
test edi, 0x10000
je 0x100ce9f0
mov dword [esp + 0x14], 1
jmp 0x100ce9fb
movzx eax, byte [0x10166afd]
mov dword [esp + 0x14], eax
test edi, 0x40000
je 0x100cea0b
and edi, 0xfffdffff
jmp 0x100cea19
cmp dword [0x10166bc0], ebx
je 0x100cea19
or edi, 0x20000
and edi, 0xfff600e7
push 0
push 0x218
mov dword [esp + 0x2c], edi
mov dword [ebp + 8], edi
call fcn.1001e4e0
mov esi, eax
add esp, 8
test esi, esi
je 0x100cf1ae
push 0x218
push 0
push esi
call fcn.1012ab60
add esp, 0xc
mov eax, esi
mov dword [esp + 0x10], eax
cmp dword [esp + 0x14], ebx
je 0x100ceaea
cmp byte [0x10166afc], bl
jne 0x100cea6c
mov dword [esi + 0xc], ebx
jmp 0x100cea7e
push 1
call dword [0x10166b40]
add esp, 4
mov dword [esi + 0xc], eax
test eax, eax
jne 0x100ceaea
cmp dword [0x10166af8], ebx
je 0x100cead6
mov eax, dword [0x10169b48]
test eax, eax
je 0x100cea99
push eax
call dword [0x10166b48]
add esp, 4
push esi
call dword [0x10166b24]
sub dword [0x101699d0], eax
add esp, 4
dec dword [0x101699f4]
push esi
call dword [0x10166b1c]
mov eax, dword [0x10169b48]
add esp, 4
test eax, eax
je 0x100ceae0
push eax
call dword [0x10166b50]
add esp, 4
xor edi, edi
lea esi, [edi + 7]
jmp 0x100cf1bb
push esi
call dword [0x10166b1c]
add esp, 4
xor edi, edi
lea esi, [edi + 7]
jmp 0x100cf1bb
mov eax, dword [esi + 0xc]
test eax, eax
je 0x100ceafb
push eax
call dword [0x10166b48]
add esp, 4
mov eax, edi
mov dword [esi + 0x14], 2
and eax, 0x2000000
mov byte [esi + 0x61], 0x6d
neg eax
mov dword [esi + 0x130], 1
push 0
sbb eax, eax
mov edx, 0x1015142c
and eax, 0xffffff00
add eax, 0xff
mov dword [esi + 0x48], eax
lea eax, [esi + 0x1cc]
mov dword [esi + 0x10], eax
xor eax, eax
mov word [esi + 0x134], ax
movups xmm0, xmmword [0x10150e34]
push fcn.100cc2a0
push 0
movups xmmword [esi + 0x78], xmm0
push 1
movups xmm0, xmmword [0x10150e44]
movups xmmword [esi + 0x88], xmm0
movups xmm0, xmmword [0x10150e54]
mov byte [esi + 0x55], 1
mov byte [esi + 0x5a], 0xff
movups xmmword [esi + 0x98], xmm0
mov dword [esi + 0xa4], eax
mov eax, dword [0x10166ba0]
mov ecx, dword [0x10166ba4]
or dword [esi + 0x20], 0xe00480e0
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x24]
mov dword [esi + 0x34], ecx
mov ecx, esi
mov dword [esi + 0x64], ebx
mov dword [esi + 0xb8], 0x10167f98
mov dword [esi + 0x24], eax
mov dword [esi + 0x1b8], ebx
mov dword [esi + 0x1b4], ebx
mov dword [esi + 0x1b0], ebx
mov dword [esi + 0x1bc], ebx
mov dword [esi + 0x18c], ebx
mov dword [esi + 0x188], ebx
mov dword [esi + 0x184], ebx
mov dword [esi + 0x190], ebx
call fcn.100ce160
push 0
push fcn.100cc2a0
push 0
push 3
mov edx, 0x1015142c
mov ecx, esi
call fcn.100ce160
push 0
push fcn.100cc2a0
push 0
push 2
mov edx, 0x1015142c
mov ecx, esi
call fcn.100ce160
push 0
push 0x100cc370
push 0
push 1
mov edx, str.NOCASE
mov ecx, esi
call fcn.100ce160
add esp, 0x40
mov edx, str.RTRIM
mov ecx, esi
push 0
push 0x100cc320
push 0
push 1
call fcn.100ce160
add esp, 0x10
mov edi, esi
cmp byte [esi + 0x57], bl
jne 0x100cf12a
mov ecx, dword [esp + 0x24]
mov eax, 1
mov dword [esi + 0x3c], ecx
and ecx, 7
shl eax, cl
test al, 0x46
jne 0x100cec88
push 0x10156e9c
push 0x2b4d1
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.10021740
add esp, 0x14
mov ecx, 0x15
jmp 0x100cecc6
mov edx, dword [esp + 0x28]
lea eax, [esp + 0x1c]
mov ecx, dword [ebp + 0xc]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [ebp + 8]
push esi
push eax
call fcn.100ce380
add esp, 0x10
mov dword [esp + 0x14], eax
test eax, eax
je 0x100ced4d
cmp eax, 7
jne 0x100cecbe
mov ecx, esi
call fcn.1001ef20
mov ecx, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
xor edx, edx
test edi, edi
mov eax, 0x101587b0
push edi
cmove eax, edx
push eax
push ecx
push esi
call fcn.10022460
add esp, 0x10
test edi, edi
je 0x100ced46
cmp dword [0x10166af8], 0
je 0x100ced3c
mov eax, dword [0x10169b48]
test eax, eax
je 0x100ced02
push eax
call dword [0x10166b48]
add esp, 4
push edi
call dword [0x10166b24]
sub dword [0x101699d0], eax
add esp, 4
dec dword [0x101699f4]
push edi
call dword [0x10166b1c]
mov eax, dword [0x10169b48]
add esp, 4
test eax, eax
je 0x100ced46
push eax
call dword [0x10166b50]
add esp, 4
mov edi, esi
jmp 0x100cf12a
push edi
call dword [0x10166b1c]
add esp, 4
mov edi, esi
jmp 0x100cf12a
mov eax, dword [ebp + 8]
mov ebx, dword [esp + 0x18]
or eax, 0x100
mov ecx, dword [esi]
mov edx, ebx
push eax
mov eax, dword [esi + 0x10]
push 0
add eax, 4
mov dword [esp + 0x2c], ebx
push eax
push esi
call fcn.10036470
add esp, 0x10
test eax, eax
je 0x100ced97
cmp eax, 0xc0a
jne 0x100ced84
mov eax, 7
mov ecx, eax
mov edx, eax
mov dword [esi + 0x40], ecx
mov ecx, esi
call fcn.100223b0
jmp 0x100cf12a
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 4]
cmp byte [ecx + 9], 0
je 0x100cedb1
inc dword [ecx + 0xc]
cmp byte [ecx + 0xa], 0
jne 0x100cedb1
call fcn.10034500
mov edx, dword [esi + 0x10]
mov ecx, esi
mov edx, dword [edx + 4]
call fcn.10079aa0
mov ecx, dword [esi + 0x10]
mov dword [ecx + 0xc], eax
cmp byte [esi + 0x57], 0
jne 0x100cee07
mov eax, dword [esi + 0x10]
lea ecx, [esi + 0x1b0]
push 0
mov edx, 0x1015142c
mov eax, dword [eax + 0xc]
mov al, byte [eax + 0x4d]
mov byte [esp + 0x13], al
mov byte [esi + 0x54], al
call fcn.10023dc0
add esp, 4
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x100cee04
movzx eax, byte [esp + 0xf]
lea eax, [eax + eax*4]
lea ecx, [ecx + eax*4]
add ecx, 0xffffffec
mov dword [esi + 8], ecx
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 4]
cmp byte [ecx + 9], 0
je 0x100cee1e
add dword [ecx + 0xc], 0xffffffff
jne 0x100cee1e
call fcn.100344e0
xor edx, edx
mov ecx, esi
call fcn.10079aa0
mov ecx, dword [esi + 0x10]
mov dword [ecx + 0x1c], eax
mov eax, dword [esi + 0x10]
mov dword [eax], str.main
mov eax, dword [esi + 0x10]
mov byte [eax + 8], 3
mov eax, dword [esi + 0x10]
mov dword [eax + 0x10], str.temp
mov eax, dword [esi + 0x10]
mov byte [eax + 0x18], 1
cmp byte [esi + 0x57], 0
mov byte [esi + 0x61], 0x76
jne 0x100cf12a
cmp dword [esi + 0x124], 0
mov dword [esi + 0x40], 0
je 0x100cee77
xor edx, edx
mov ecx, esi
call fcn.100223b0
jmp 0x100cee7e
mov dword [esi + 0x44], 0xffffffff
push 2
push str.MATCH
push esi
call fcn.100cd440
add esp, 0xc
cmp eax, 7
jne 0x100cee9a
mov ecx, esi
call fcn.1001ef20
mov al, byte [esi + 0x61]
cmp al, 0xba
je 0x100ceee9
cmp al, 0x76
je 0x100ceee9
cmp al, 0x6d
je 0x100ceee9
push str.invalid
push str.API_call_with__s_database_connection_pointer
push 0x15
call fcn.10021740
add esp, 0xc
push 0x10156e9c
push 0x2b1fb
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.10021740
add esp, 0x14
mov dword [esp + 0x10], esi
mov edx, 0x15
jmp 0x100cf0d2
cmp byte [esi + 0x57], 0
mov ecx, esi
mov dword [esp + 0x10], ecx
jne 0x100cf0cd
mov edx, dword [esi + 0x48]
and edx, dword [esi + 0x40]
jne 0x100cf0d2
mov eax, 0x1014edcc
mov dword [esp + 0x10], ecx
mov dword [esp + 0x1c], eax
mov edx, ecx
mov ecx, edi
cmp eax, 0x1014ede4
jge 0x100cef3d
mov eax, dword [eax]
push esi
call eax
mov edx, eax
add esp, 4
mov eax, dword [esp + 0x1c]
mov ecx, esi
add eax, 4
mov dword [esp + 0x1c], eax
test edx, edx
je 0x100cef12
jmp 0x100cf0d2
cmp dword [0x10169930], 0
mov eax, edx
mov dword [esp + 0x10], eax
je 0x100cf06c
xor ecx, ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
lea ebx, [ecx + 1]
nop dword [eax]
cmp byte [0x10166afc], 0
jne 0x100cef6d
xor edi, edi
jmp 0x100cef8c
push 2
call dword [0x10166b40]
mov edi, eax
add esp, 4
test edi, edi
je 0x100cef88
push edi
call dword [0x10166b48]
add esp, 4
mov ecx, dword [esp + 0x14]
cmp ecx, dword [0x10169930]
jb 0x100cefa0
mov dword [esp + 0x1c], 0
xor ebx, ebx
jmp 0x100cefac
mov eax, dword [0x10169934]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x1c], eax
test edi, edi
je 0x100cefba
push edi
call dword [0x10166b50]
add esp, 4
mov eax, dword [esp + 0x1c]
xor edi, edi
mov dword [esp + 0x18], edi
test eax, eax
je 0x100ceff5
push 0x101515c8
lea ecx, [esp + 0x1c]
push ecx
push esi
call eax
add esp, 0xc
test eax, eax
je 0x100ceff1
push dword [esp + 0x18]
push str.automatic_extension_loading_failed:__s
push eax
push esi
call fcn.10022460
add esp, 0x10
xor ebx, ebx
mov edi, dword [esp + 0x18]
test edi, edi
je 0x100cf051
cmp dword [0x10166af8], 0
je 0x100cf047
mov eax, dword [0x10169b48]
test eax, eax
je 0x100cf015
push eax
call dword [0x10166b48]
add esp, 4
push edi
call dword [0x10166b24]
sub dword [0x101699d0], eax
add esp, 4
dec dword [0x101699f4]
push edi
call dword [0x10166b1c]
mov eax, dword [0x10169b48]
add esp, 4
test eax, eax
je 0x100cf051
push eax
call dword [0x10166b50]
jmp 0x100cf04e
push edi
call dword [0x10166b1c]
add esp, 4
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
test ebx, ebx
jne 0x100cef60
mov ebx, dword [esp + 0x24]
mov edi, esi
mov eax, dword [esp + 0x10]
mov ecx, eax
mov edx, edi
mov al, byte [esi + 0x61]
cmp al, 0xba
je 0x100cf0b3
cmp al, 0x76
je 0x100cf0b3
cmp al, 0x6d
je 0x100cf0b3
push str.invalid
push str.API_call_with__s_database_connection_pointer
push 0x15
call fcn.10021740
add esp, 0xc
push 0x10156e9c
push 0x2b1fb
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.10021740
add esp, 0x14
jmp 0x100cf12a
cmp byte [esi + 0x57], 0
mov edi, edx
mov dword [esp + 0x10], ecx
jne 0x100cf12a
mov eax, dword [esi + 0x48]
and eax, dword [esi + 0x40]
jne 0x100cf12a
mov dword [esp + 0x10], ecx
jmp 0x100cf0dc
mov edx, 7
mov ecx, esi
mov dword [esi + 0x40], edx
call fcn.100223b0
push dword [0x10166b10]
xor edx, edx
mov ecx, esi
push dword [0x10166b0c]
call fcn.100cbca0
mov eax, dword [esi + 0xc]
add esp, 8
test eax, eax
je 0x100cf105
push eax
call dword [0x10166b48]
add esp, 4
mov eax, dword [esi + 0xc]
mov dword [esi + 0x110], 0x100cd750
mov dword [esi + 0x114], 0x3e8
test eax, eax
je 0x100cf12a
push eax
call dword [0x10166b50]
add esp, 4
mov eax, dword [esi + 0xc]
test eax, eax
je 0x100cf13b
push eax
call dword [0x10166b50]
add esp, 4
mov al, byte [esi + 0x61]
cmp al, 0xba
je 0x100cf187
cmp al, 0x76
je 0x100cf187
cmp al, 0x6d
je 0x100cf187
push str.invalid
push str.API_call_with__s_database_connection_pointer
push 0x15
call fcn.10021740
add esp, 0xc
push 0x10156e9c
push 0x2b1fb
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.10021740
add esp, 0x14
mov byte [edi + 0x61], 0xba
mov esi, 0x15
jmp 0x100cf1c6
cmp byte [esi + 0x57], 0
jne 0x100cf1b0
mov ecx, dword [esi + 0x40]
and ecx, dword [esi + 0x48]
mov edi, dword [esp + 0x10]
mov edx, ecx
mov dword [esp + 0x24], ecx
cmp cl, 7
je 0x100cf1b7
mov esi, edx
test edx, edx
je 0x100cf1c6
mov byte [edi + 0x61], 0xba
jmp 0x100cf1c6
mov edi, esi
mov esi, 7
jmp 0x100cf1bb
mov esi, dword [esp + 0x24]
xor edx, edx
mov ecx, edi
call fcn.100cc500
xor edi, edi
mov eax, dword [esp + 0x2c]
mov dword [eax], edi
test ebx, ebx
je 0x100cf25b
cmp byte [ebx - 1], 0
lea eax, [ebx - 1]
jne 0x100cf1f1
cmp byte [ebx - 2], 0
jne 0x100cf1f1
cmp byte [ebx - 3], 0
jne 0x100cf1f1
add ebx, 0xfffffffc
cmp byte [ebx], 0
je 0x100cf1f5
mov ebx, eax
jmp 0x100cf1d4
test ebx, ebx
je 0x100cf25b
cmp dword [0x10166af8], 0
je 0x100cf251
mov eax, dword [0x10169b48]
test eax, eax
je 0x100cf215
push eax
call dword [0x10166b48]
add esp, 4
push ebx
call dword [0x10166b24]
sub dword [0x101699d0], eax
add esp, 4
dec dword [0x101699f4]
push ebx
call dword [0x10166b1c]
mov eax, dword [0x10169b48]
add esp, 4
test eax, eax
je 0x100cf25b
push eax
call dword [0x10166b50]
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push ebx
call dword [0x10166b1c]
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret