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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x78
mov eax, dword [0x101cd100]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov esi, ecx
mov dword [ebp - 0x24], ebx
push dword [ebx + 0x78]
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x54], esi
call fcn.10017170
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x10]
mov dword [ebp - 0x58], ecx
push eax
mov ecx, esi
call fcn.100109b0
mov ecx, dword [eax + 8]
movq xmm0, qword [eax]
movq qword [ebp - 0x3c], xmm0
cmp byte [ecx + 0xd], 0
jne 0x100f408e
cmp dword [ecx + 0x24], 0xf
lea edx, [ecx + 0x10]
jbe 0x100f4062
mov edx, dword [ecx + 0x10]
push dword [ecx + 0x20]
mov edi, dword [ebp - 0x60]
lea eax, [ebp - 0x74]
mov esi, dword [ebp - 0x74]
cmp edi, 0xf
push edx
push dword [ebp - 0x64]
cmova eax, esi
push eax
call fcn.10011370
add esp, 0x10
test eax, eax
js 0x100f408b
mov byte [ebp - 0x1d], 0
jmp 0x100f40ee
mov esi, dword [ebp - 0x54]
cmp dword [esi + 4], 0x5555555
je 0x100f475c
mov ebx, dword [esi]
push 0x30
lfence
call fcn.10132688
mov edi, eax
add esp, 4
lea eax, [ebp - 0x74]
push eax
lea ecx, [edi + 0x10]
call fcn.10017170
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0x58]
mov dword [edi + 0x28], ecx
mov ecx, dword [ebp - 0x54]
push edi
push dword [ebp - 0x38]
mov dword [edi + 0x2c], edx
push dword [ebp - 0x3c]
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
mov word [edi + 0xc], 0
call fcn.10023180
mov edi, dword [ebp - 0x60]
mov esi, dword [ebp - 0x74]
mov ebx, dword [ebp - 0x24]
mov byte [ebp - 0x1d], 1
cmp edi, 0xf
jbe 0x100f411e
lea ecx, [edi + 1]
mov eax, esi
cmp ecx, 0x1000
jb 0x100f4114
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4766
push ecx
push esi
call fcn.101326bd
add esp, 8
cmp byte [ebp - 0x1d], 0
jne 0x100f4171
push dword [ebx + 0x78]
lea ecx, [ebp - 0x78]
push str.File_already_exists_in_database:
push 0x78
push str.C:jkpackageycore_registry_srcprotobuf3.11.1_srcgoogleprotobufdescriptor_database.cc
push 2
call fcn.10092130
mov ecx, eax
call fcn.10092320
mov ecx, eax
call fcn.10092210
push eax
lea ecx, [ebp - 0x1d]
call fcn.100921c0
lea ecx, [ebp - 0x78]
call fcn.10092170
pop edi
pop esi
xor al, al
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10132a90
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebx + 8]
shr eax, 1
test al, 1
je 0x100f4193
push dword [ebx + 0x7c]
lea ecx, [ebp - 0x6c]
call fcn.10017170
push eax
lea ecx, [ebp - 0x1c]
call fcn.10017170
lea ecx, [ebp - 0x6c]
jmp 0x100f41bb
xorps xmm0, xmm0
mov dword [ebp - 0x38], 0
lea eax, [ebp - 0x48]
mov dword [ebp - 0x34], 0xf
movups xmmword [ebp - 0x48], xmm0
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 0x48], 0
call fcn.10017170
lea ecx, [ebp - 0x48]
call fcn.1001d770
mov edx, dword [ebp - 0xc]
test edx, edx
je 0x100f41d4
push 0x2e
lea ecx, [ebp - 0x1c]
call fcn.100f3ae0
mov edx, dword [ebp - 0xc]
xor edi, edi
cmp dword [ebx + 0x24], edi
jle 0x100f4338
mov eax, bind
sub eax, edx
mov dword [ebp - 0x4c], eax
nop dword [eax]
mov eax, dword [ebx + 0x2c]
mov eax, dword [eax + edi*4 + 4]
mov esi, dword [eax + 0x90]
mov ecx, dword [esi + 0x10]
mov dword [ebp - 0x30], ecx
cmp dword [ebp - 0x4c], ecx
jb 0x100f4761
cmp dword [ebp - 8], 0xf
lea eax, [ebp - 0x1c]
cmova eax, dword [ebp - 0x1c]
cmp dword [esi + 0x14], 0xf
mov dword [ebp - 0x50], eax
jbe 0x100f4222
mov esi, dword [esi]
add ecx, edx
mov dword [ebp - 0x38], 0
mov edx, 0xf
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x24], ecx
xorps xmm0, xmm0
lea eax, [ebp - 0x48]
mov dword [ebp - 0x2c], eax
movups xmmword [ebp - 0x48], xmm0
cmp ecx, edx
jbe 0x100f4287
mov eax, ecx
or eax, edx
cmp eax, 0x7fffffff
jbe 0x100f425d
mov eax, bind
jmp 0x100f4268
cmp eax, 0x16
mov ecx, 0x16
cmovb eax, ecx
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000f920
mov edx, dword [ebp - 0x28]
add esp, 8
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x48], eax
push dword [ebp - 0xc]
mov dword [ebp - 0x38], ecx
push dword [ebp - 0x50]
mov dword [ebp - 0x34], edx
push eax
call fcn.101346d0
push dword [ebp - 0x30]
mov eax, dword [ebp - 0xc]
push esi
mov esi, dword [ebp - 0x2c]
add eax, esi
push eax
call fcn.101346d0
mov eax, dword [ebp - 0x24]
add esp, 0x18
mov byte [esi + eax], 0
lea eax, [ebp - 0x48]
push dword [ebp + 0x10]
mov esi, dword [ebp - 0x54]
mov ecx, esi
push dword [ebp + 0xc]
push eax
call fcn.100f47f0
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 0x1d], al
cmp ecx, 0xf
jbe 0x100f4303
mov edx, dword [ebp - 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f42f6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4766
push ecx
push edx
call fcn.101326bd
mov al, byte [ebp - 0x1d]
add esp, 8
test al, al
je 0x100f470f
push dword [ebp + 0x10]
mov eax, dword [ebx + 0x2c]
mov ecx, esi
push dword [ebp + 0xc]
push dword [eax + edi*4 + 4]
push dword [ebx + 0x78]
call fcn.100f4770
test al, al
je 0x100f470f
inc edi
cmp edi, dword [ebx + 0x24]
jge 0x100f4338
mov edx, dword [ebp - 0xc]
jmp 0x100f41f0
xor edi, edi
cmp dword [ebx + 0x34], edi
jle 0x100f4477
mov edx, dword [ebp - 0xc]
mov ecx, bind
sub ecx, edx
mov dword [ebp - 0x4c], ecx
mov eax, dword [ebx + 0x3c]
mov eax, dword [eax + edi*4 + 4]
mov esi, dword [eax + 0x40]
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x50], eax
cmp ecx, eax
jb 0x100f4761
cmp dword [ebp - 8], 0xf
lea ecx, [ebp - 0x1c]
cmova ecx, dword [ebp - 0x1c]
cmp dword [esi + 0x14], 0xf
mov dword [ebp - 0x30], ecx
jbe 0x100f437e
mov esi, dword [esi]
lea ecx, [edx + eax]
mov dword [ebp - 0x38], 0
mov edx, 0xf
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x28], ecx
xorps xmm0, xmm0
lea eax, [ebp - 0x48]
mov dword [ebp - 0x2c], eax
movups xmmword [ebp - 0x48], xmm0
cmp ecx, edx
jbe 0x100f43e4
mov eax, ecx
or eax, edx
cmp eax, 0x7fffffff
jbe 0x100f43ba
mov eax, bind
jmp 0x100f43c5
cmp eax, 0x16
mov ecx, 0x16
cmovb eax, ecx
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000f920
mov edx, dword [ebp - 0x24]
add esp, 8
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x48], eax
push dword [ebp - 0xc]
mov dword [ebp - 0x38], ecx
push dword [ebp - 0x30]
mov dword [ebp - 0x34], edx
push eax
call fcn.101346d0
push dword [ebp - 0x50]
mov eax, dword [ebp - 0xc]
push esi
mov esi, dword [ebp - 0x2c]
add eax, esi
push eax
call fcn.101346d0
mov eax, dword [ebp - 0x28]
add esp, 0x18
mov ecx, dword [ebp - 0x54]
mov byte [esi + eax], 0
lea eax, [ebp - 0x48]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push eax
call fcn.100f47f0
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 0x1d], al
cmp ecx, 0xf
jbe 0x100f445e
mov edx, dword [ebp - 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4451
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4766
push ecx
push edx
call fcn.101326bd
mov al, byte [ebp - 0x1d]
add esp, 8
test al, al
je 0x100f470f
inc edi
cmp edi, dword [ebx + 0x34]
jge 0x100f4477
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x4c]
jmp 0x100f4350
xor edi, edi
cmp dword [ebx + 0x54], edi
jle 0x100f45d5
mov edx, dword [ebp - 0xc]
mov eax, bind
sub eax, edx
mov dword [ebp - 0x30], eax
nop
mov eax, dword [ebx + 0x5c]
mov eax, dword [eax + edi*4 + 4]
mov esi, dword [eax + 0x10]
mov ecx, dword [esi + 0x10]
mov dword [ebp - 0x4c], ecx
cmp dword [ebp - 0x30], ecx
jb 0x100f4761
cmp dword [ebp - 8], 0xf
lea eax, [ebp - 0x1c]
cmova eax, dword [ebp - 0x1c]
cmp dword [esi + 0x14], 0xf
mov dword [ebp - 0x50], eax
jbe 0x100f44bf
mov esi, dword [esi]
add ecx, edx
mov dword [ebp - 0x38], 0
mov edx, 0xf
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x28], ecx
xorps xmm0, xmm0
lea eax, [ebp - 0x48]
mov dword [ebp - 0x2c], eax
movups xmmword [ebp - 0x48], xmm0
cmp ecx, edx
jbe 0x100f4524
mov eax, ecx
or eax, edx
cmp eax, 0x7fffffff
jbe 0x100f44fa
mov eax, bind
jmp 0x100f4505
cmp eax, 0x16
mov ecx, 0x16
cmovb eax, ecx
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000f920
mov edx, dword [ebp - 0x24]
add esp, 8
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x48], eax
push dword [ebp - 0xc]
mov dword [ebp - 0x38], ecx
push dword [ebp - 0x50]
mov dword [ebp - 0x34], edx
push eax
call fcn.101346d0
push dword [ebp - 0x4c]
mov eax, dword [ebp - 0xc]
push esi
mov esi, dword [ebp - 0x2c]
add eax, esi
push eax
call fcn.101346d0
mov eax, dword [ebp - 0x28]
add esp, 0x18
mov byte [esi + eax], 0
lea eax, [ebp - 0x48]
push dword [ebp + 0x10]
mov esi, dword [ebp - 0x54]
mov ecx, esi
push dword [ebp + 0xc]
push eax
call fcn.100f47f0
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 0x1d], al
cmp ecx, 0xf
jbe 0x100f45a0
mov edx, dword [ebp - 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4593
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4766
push ecx
push edx
call fcn.101326bd
mov al, byte [ebp - 0x1d]
add esp, 8
test al, al
je 0x100f470f
push dword [ebp + 0x10]
mov eax, dword [ebx + 0x5c]
mov ecx, esi
push dword [ebp + 0xc]
push dword [eax + edi*4 + 4]
push dword [ebx + 0x78]
call fcn.100f3db0
test al, al
je 0x100f470f
inc edi
cmp edi, dword [ebx + 0x54]
jge 0x100f45d5
mov edx, dword [ebp - 0xc]
jmp 0x100f4490
xor edi, edi
cmp dword [ebx + 0x44], edi
jle 0x100f4713
mov edx, dword [ebp - 0xc]
mov ecx, bind
sub ecx, edx
mov dword [ebp - 0x4c], ecx
nop dword [eax]
mov eax, dword [ebx + 0x4c]
mov eax, dword [eax + edi*4 + 4]
mov esi, dword [eax + 0x20]
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x50], eax
cmp ecx, eax
jb 0x100f4761
cmp dword [ebp - 8], 0xf
lea ecx, [ebp - 0x1c]
cmova ecx, dword [ebp - 0x1c]
cmp dword [esi + 0x14], 0xf
mov dword [ebp - 0x30], ecx
jbe 0x100f461e
mov esi, dword [esi]
lea ecx, [edx + eax]
mov dword [ebp - 0x38], 0
mov edx, 0xf
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x28], ecx
xorps xmm0, xmm0
lea eax, [ebp - 0x48]
mov dword [ebp - 0x2c], eax
movups xmmword [ebp - 0x48], xmm0
cmp ecx, edx
jbe 0x100f4684
mov eax, ecx
or eax, edx
cmp eax, 0x7fffffff
jbe 0x100f465a
mov eax, bind
jmp 0x100f4665
cmp eax, 0x16
mov ecx, 0x16
cmovb eax, ecx
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.1000f920
mov edx, dword [ebp - 0x24]
add esp, 8
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x48], eax
push dword [ebp - 0xc]
mov dword [ebp - 0x38], ecx
push dword [ebp - 0x30]
mov dword [ebp - 0x34], edx
push eax
call fcn.101346d0
push dword [ebp - 0x50]
mov eax, dword [ebp - 0xc]
push esi
mov esi, dword [ebp - 0x2c]
add eax, esi
push eax
call fcn.101346d0
mov eax, dword [ebp - 0x28]
add esp, 0x18
mov ecx, dword [ebp - 0x54]
mov byte [esi + eax], 0
lea eax, [ebp - 0x48]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push eax
call fcn.100f47f0
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 0x1d], al
cmp ecx, 0xf
jbe 0x100f46fa
mov edx, dword [ebp - 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f46ed
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4766
push ecx
push edx
call fcn.101326bd
mov al, byte [ebp - 0x1d]
add esp, 8
test al, al
je 0x100f470f
inc edi
cmp edi, dword [ebx + 0x44]
jge 0x100f4713
mov ecx, dword [ebp - 0x4c]
mov edx, dword [ebp - 0xc]
jmp 0x100f45f0
xor bl, bl
jmp 0x100f4715
mov bl, 1
mov eax, dword [ebp - 8]
cmp eax, 0xf
jbe 0x100f4747
mov edx, dword [ebp - 0x1c]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x100f473d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4766
push ecx
push edx
call fcn.101326bd
add esp, 8
mov ecx, dword [ebp - 4]
mov al, bl
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10132a90
mov esp, ebp
pop ebp
ret 0xc
call fcn.10023be0
call fcn.10023c60
call fcn.101381df
int3