joyce8/EMBER2024-capa huggingface dataset:
Function at 0x42dea0
Capabilities:
Open clipboard
Read clipboard data

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x38
mov esi, esp
mov ebx, dword [ebp + 8]
call fcn.0040fc20
push eax
mov dword [esi + 0x14], esp
push eax
mov eax, esp
sub esp, 0x18
mov edi, esp
and edi, 0xfffffff8
mov esp, edi
jmp 0x42dec9
push eax
mov dword [esi + 0x20], esp
mov dword [esi + 0x24], ebx
mov byte [esi + 7], 0
jmp 0x42ded6
mov ebx, eax
xor eax, eax
sub esp, 4
mov dword [esp], 0
call dword [sym.imp.USER32.dll_OpenClipboard]
cmp eax, 0
setne al
test al, 1
jne 0x42def9
jmp 0x42e056
xor eax, eax
sub esp, 8
mov dword [esp], 0
mov dword [esp + 4], 0
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov dword [esi + 0x2c], eax
sub esp, 4
mov dword [esp], 1
call dword [sym.imp.USER32.dll_GetClipboardData]
mov dword [esi + 0xc], eax
cmp dword [esi + 0xc], 0
je 0x42e04a
mov eax, dword [esi + 0xc]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov ecx, dword [esi + 0x14]
mov dword [ecx], eax
mov eax, dword [ecx]
sub esp, 4
mov dword [esp], eax
call fcn.00408e20
add esp, 4
mov dword [ebx], eax
mov eax, dword [ebx]
cmp eax, 0
setne al
jmp 0x42df63
jmp 0x42df65
jmp 0x42df67
test al, 1
jne 0x42df70
jmp 0x42e035
mov ecx, dword [esi + 0x24]
mov edx, dword [ebx]
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov dword [esi + 0x18], eax
mov eax, dword [esi + 0x20]
mov bl, byte [eax]
mov byte [esi + 0x10], bl
mov byte [edi], 0x1b
mov byte [edi + 1], 0x35
mov byte [edi + 2], 0x3b
mov byte [edi + 3], 0x33
mov byte [edi + 4], 0
mov byte [edi + 5], 0xc
mov byte [edi + 6], 0x3f
mov byte [edi + 7], 0xd
mov byte [edi + 8], 2
mov byte [edi + 9], 0xcf
mov byte [edi + 0xa], 0x14
mov byte [edi + 0xb], 0x13
mov byte [edi + 0xc], 0x16
mov byte [edi + 0xd], 0x95
mov byte [edi + 0x10], 0
mov word [edi + 0xe], 0
mov dword [esi + 8], 0
mov ebx, dword [esi + 8]
cmp ebx, 0x11
jae 0x42e01a
mov dword [esi + 0x1c], edx
jmp 0x42dfda
mov edx, dword [esi + 8]
mov eax, dword [esi + 8]
movzx eax, byte [edi + eax]
mov ebx, edx
add ebx, 0x2af9149b
add edx, 0x9b
and edx, eax
or ebx, eax
sub ebx, edx
mov dword [esi + 0x28], ebx
mov eax, dword [esi + 0x28]
add al, 0xc3
mov edx, dword [esi + 8]
mov byte [edi + edx], al
mov eax, dword [esi + 8]
inc eax
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, 0x11
jb 0x42dfda
mov edx, dword [esi + 0x1c]
jmp 0x42e01a
sub esp, 0xc
mov dword [esp], edi
mov eax, dword [esi + 0x18]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.00409610
and al, 1
mov byte [esi + 7], al
mov eax, dword [esi + 0xc]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
jmp 0x42e046
jmp 0x42e048
jmp 0x42e04a
call dword [sym.imp.USER32.dll_CloseClipboard]
jmp 0x42e052
jmp 0x42e054
jmp 0x42e056
mov al, byte [esi + 7]
jmp 0x42e05b
jmp 0x42e05d
jmp 0x42e05f
and al, 1
movzx eax, al
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x43aaa0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x20
mov ecx, dword [ebp + 8]
mov dword [esp + 8], 0x23222d5c
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov byte [esp + 0x14], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xc
ja 0x43ab29
nop
nop
nop
nop
nop
mov eax, dword [esp]
mov edx, dword [esp]
movzx edx, byte [esp + edx + 8]
lea esi, [eax + 0x86]
and esi, edx
mov edi, 0xf8a9f979
sub edi, eax
or edi, edx
not edi
add edi, edx
sub edi, esi
mov dword [esp + 4], edi
mov eax, dword [esp + 4]
mov edx, eax
xor edx, 0x55
and eax, 0x55
lea eax, [edx + eax*2]
inc al
mov edx, dword [esp]
mov byte [esp + edx + 8], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xd
jb 0x43aae0
mov eax, dword [esp + 8]
mov eax, dword fs:[eax]
xor edx, edx
test ecx, ecx
sete dl
mov edx, dword [edx*4 + 0x44959c]
mov esi, 0xe07511d2
xor esi, dword [0x4495a4]
add edx, esi
inc edx
jmp edx
Function at 0x43b470
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x40
mov ebx, dword [ebp + 8]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ebx + eax + 2], 0
lea eax, [eax + 2]
jne 0x43b490
mov edi, eax
sar edi, 1
cmp eax, 0xfffffff5
jge 0x43b4ab
mov eax, 0xffffffff
jmp 0x43b4ae
add eax, 0xa
push eax
call fcn.00408d00
add esp, 4
mov esi, eax
mov dword [eax], 0x3f005c
mov dword [eax + 4], 0x5c003f
lea eax, [edi + 4]
mov word [esi + 8], 0
mov ecx, esi
add ecx, 8
movzx edx, word [ebx]
test dx, dx
je 0x43b4f1
add ebx, 2
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [ebx]
add ebx, 2
test dx, dx
jne 0x43b4e0
mov word [ecx], 0
mov ecx, eax
and ecx, 0xfffd
and edi, 2
mov edx, edi
xor edx, 2
imul edx, ecx
or eax, 2
imul eax, edi
lea ecx, [eax + edx]
mov word [esp + 4], cx
add eax, edx
add eax, 2
mov word [esp + 6], ax
mov dword [esp + 8], esi
mov dword [esp + 0x24], 0x18
mov dword [esp + 0x28], 0
mov dword [esp + 0x30], 0x40
lea eax, [esp + 4]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x10], 0xbcbdbebf
mov dword [esp + 0x14], 0
mov dword [esp + 0x17], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xa
ja 0x43b5cb
nop
nop
nop
nop
mov edx, dword [esp]
mov eax, dword [esp]
movzx ebx, byte [esp + eax + 0x10]
lea eax, [edx - 0x4ee8d9e8]
mov ecx, eax
and ecx, ebx
mov edi, eax
xor edi, ebx
add edx, 0x18
and edx, ebx
or eax, ebx
xor eax, edi
mov ebx, eax
and ebx, edx
xor eax, edx
sub ecx, ebx
sub edi, eax
lea eax, [edi + ecx*2]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0x58
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xb
jb 0x43b580
mov edi, dword [esp + 0x10]
mov eax, dword [0x44b1ac]
test eax, eax
je 0x43b62d
xor ecx, ecx
mov edx, dword [0x44b1b0]
cmp dword [edx + ecx*8], 0x7a96736e
je 0x43b5f0
inc ecx
cmp eax, ecx
jne 0x43b5e0
jmp 0x43b62d
mov eax, dword [edx + ecx*8 + 4]
cmp eax, edi
je 0x43b62d
lea ecx, [esp + 0x10]
lea edx, [esp + 0x24]
push 0
push 0
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x20]
push 0
push ecx
push edx
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push 0xb
push dword [0x44b1b4]
push eax
call fcn.00438da0
add esp, 0x38
mov edi, eax
push esi
call fcn.00408d10
add esp, 4
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x43b640
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x40
mov ebx, dword [ebp + 8]
mov eax, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ebx + eax + 2], 0
lea eax, [eax + 2]
jne 0x43b660
mov edi, eax
sar edi, 1
cmp eax, 0xfffffff5
jge 0x43b67b
mov eax, 0xffffffff
jmp 0x43b67e
add eax, 0xa
push eax
call fcn.00408d00
add esp, 4
mov esi, eax
mov dword [eax], 0x3f005c
mov dword [eax + 4], 0x5c003f
lea eax, [edi + 4]
mov word [esi + 8], 0
mov ecx, esi
add ecx, 8
movzx edx, word [ebx]
test dx, dx
je 0x43b6c1
add ebx, 2
nop
mov word [ecx], dx
add ecx, 2
movzx edx, word [ebx]
add ebx, 2
test dx, dx
jne 0x43b6b0
mov word [ecx], 0
mov edx, 3
sub edx, edi
and edx, 2
mov ecx, eax
and ecx, 0xfffd
imul ecx, edx
and edi, 2
or eax, 2
imul eax, edi
lea edx, [eax + ecx]
mov word [esp + 4], dx
add eax, ecx
add eax, 2
mov word [esp + 6], ax
mov dword [esp + 8], esi
mov dword [esp + 0x24], 0x18
mov dword [esp + 0x28], 0
mov dword [esp + 0x30], 0x40
lea eax, [esp + 4]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x10], 0xbcbdbebf
mov dword [esp + 0x14], 0
mov dword [esp + 0x17], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xa
ja 0x43b7ab
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp]
mov eax, dword [esp]
movzx ebx, byte [esp + eax + 0x10]
lea eax, [edx - 0x4ee8d9e8]
mov ecx, eax
and ecx, ebx
mov edi, eax
xor edi, ebx
add edx, 0x18
and edx, ebx
or eax, ebx
xor eax, edi
mov ebx, eax
and ebx, edx
xor eax, edx
sub ecx, ebx
sub edi, eax
lea eax, [edi + ecx*2]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0x58
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xb
jb 0x43b760
mov edi, dword [esp + 0x10]
mov eax, dword [0x44b1ac]
test eax, eax
je 0x43b801
xor ecx, ecx
mov edx, dword [0x44b1b0]
cmp dword [edx + ecx*8], 0x366ceda
je 0x43b7d0
inc ecx
cmp eax, ecx
jne 0x43b7c0
jmp 0x43b801
mov eax, dword [edx + ecx*8 + 4]
cmp eax, edi
je 0x43b801
lea ecx, [esp + 0x10]
lea edx, [esp + 0x24]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push ecx
push edx
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push 6
push dword [0x44b1b4]
push eax
call fcn.00438da0
add esp, 0x24
mov edi, eax
push esi
call fcn.00408d10
add esp, 4
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x43b820
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x58
mov ebx, dword [ebp + 8]
mov edi, 0xfffffffe
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp word [ebx + edi + 2], 0
lea edi, [edi + 2]
jne 0x43b840
cmp edi, 0xfffffff5
jge 0x43b857
mov eax, 0xffffffff
jmp 0x43b85a
lea eax, [edi + 0xa]
push eax
call fcn.00408d00
add esp, 4
mov esi, eax
mov dword [eax], 0x3f005c
mov dword [eax + 4], 0x5c003f
mov word [eax + 8], 0
add eax, 8
movzx ecx, word [ebx]
test cx, cx
je 0x43b8a1
add ebx, 2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov word [eax], cx
add eax, 2
movzx ecx, word [ebx]
add ebx, 2
test cx, cx
jne 0x43b890
mov word [eax], 0
and edi, 0xfffffffe
lea eax, [edi + 8]
mov word [esp + 4], ax
add edi, 0xa
mov word [esp + 6], di
mov dword [esp + 8], esi
mov dword [esp + 0x10], 0x18
mov dword [esp + 0x14], 0
mov dword [esp + 0x1c], 0x40
lea eax, [esp + 4]
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0xbcbdbebf
mov dword [esp + 0x2c], 0
mov dword [esp + 0x2f], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xa
ja 0x43b96b
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp]
mov eax, dword [esp]
movzx ebx, byte [esp + eax + 0x28]
lea eax, [edx - 0x4ee8d9e8]
mov ecx, eax
and ecx, ebx
mov edi, eax
xor edi, ebx
add edx, 0x18
and edx, ebx
or eax, ebx
xor eax, edi
mov ebx, eax
and ebx, edx
xor eax, edx
sub ecx, ebx
sub edi, eax
lea eax, [edi + ecx*2]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0x58
mov ecx, dword [esp]
mov byte [esp + ecx + 0x28], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xb
jb 0x43b920
mov edi, dword [esp + 0x28]
mov eax, dword [0x44b1ac]
test eax, eax
je 0x43b9a0
xor ecx, ecx
mov edx, dword [0x44b1b0]
mov ebx, dword [ebp + 0xc]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [edx + ecx*8], 0xb5b385c7
je 0x43b9a5
inc ecx
cmp eax, ecx
jne 0x43b990
jmp 0x43b9ca
mov ebx, dword [ebp + 0xc]
jmp 0x43b9ca
mov eax, dword [edx + ecx*8 + 4]
cmp eax, edi
je 0x43b9ca
lea ecx, [esp + 0x28]
lea edx, [esp + 0x10]
push ecx
push edx
push 2
push dword [0x44b1b4]
push eax
call fcn.00438da0
add esp, 0x14
mov edi, eax
push esi
call fcn.00408d10
add esp, 4
test ebx, ebx
je 0x43b9dd
mov eax, dword [esp + 0x48]
mov dword [ebx], eax
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x43b9f0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x30
mov dword [esp + 8], 0xbcbdbebf
mov dword [esp + 0xc], 0
mov dword [esp + 0xf], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 0xa
ja 0x43ba80
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp + 4]
mov eax, dword [esp + 4]
movzx edi, byte [esp + eax + 8]
lea eax, [edx - 0x4ee8d9e8]
mov ecx, eax
and ecx, edi
mov esi, eax
xor esi, edi
add edx, 0x18
and edx, edi
or eax, edi
xor eax, esi
mov edi, eax
and edi, edx
xor eax, edx
sub ecx, edi
sub esi, eax
lea eax, [esi + ecx*2]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
add al, 0x58
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 8], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 0xb
jb 0x43ba30
mov esi, dword [ebp + 0xc]
mov eax, dword [esp + 8]
mov edx, dword [0x44b1ac]
test edx, edx
je 0x43bad8
mov ecx, dword [ebp + 8]
xor edi, edi
mov ebx, dword [0x44b1b0]
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x3bebd150
je 0x43bab0
inc edi
cmp edx, edi
jne 0x43baa0
jmp 0x43bad8
mov edx, dword [ebx + edi*8 + 4]
cmp edx, eax
je 0x43bad8
lea eax, [esp + 8]
lea edi, [esp + 0x24]
push 5
push 0x18
push eax
push edi
push ecx
push 5
push dword [0x44b1b4]
push edx
call fcn.00438da0
add esp, 0x20
mov ecx, dword [ebp + 0x10]
test esi, esi
je 0x43bae5
mov edx, dword [esp + 0x10]
mov dword [esi], edx
test ecx, ecx
je 0x43baf1
cmp byte [esp + 0x1d], 0
setne byte [ecx]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x43bb00
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x28
mov dword [esp + 8], 0xbcbdbebf
mov dword [esp + 0xc], 0
mov dword [esp + 0xf], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xa
ja 0x43bb8b
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp]
mov eax, dword [esp]
movzx edi, byte [esp + eax + 8]
lea eax, [edx - 0x4ee8d9e8]
mov ecx, eax
and ecx, edi
mov esi, eax
xor esi, edi
add edx, 0x18
and edx, edi
or eax, edi
xor eax, esi
mov edi, eax
and edi, edx
xor eax, edx
sub ecx, edi
sub esi, eax
lea eax, [esi + ecx*2]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
add al, 0x58
mov ecx, dword [esp]
mov byte [esp + ecx + 8], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xb
jb 0x43bb40
mov eax, dword [esp + 8]
mov edi, dword [0x44b1ac]
test edi, edi
je 0x43bbed
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
xor ebx, ebx
mov esi, dword [0x44b1b0]
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [esi + ebx*8], 0xb0852ef6
je 0x43bbc0
inc ebx
cmp edi, ebx
jne 0x43bbb0
jmp 0x43bbed
mov edi, dword [esi + ebx*8 + 4]
cmp edi, eax
je 0x43bbed
lea eax, [esp + 0x1c]
push 0
push 0
push edx
push ecx
push eax
push 0
push 0
push 0
push dword [ebp + 8]
push 9
push dword [0x44b1b4]
push edi
call fcn.00438da0
add esp, 0x30
mov edi, dword [ebp + 0x14]
cmp eax, 0x103
jne 0x43bcd8
mov dword [esp + 8], 0xbcbdbebf
mov dword [esp + 0xc], 0
mov dword [esp + 0xf], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 0xa
ja 0x43bc7e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp + 4]
mov eax, dword [esp + 4]
movzx esi, byte [esp + eax + 8]
lea eax, [edx - 0x4ee8d9e8]
mov ecx, eax
and ecx, esi
mov ebx, eax
xor ebx, esi
add edx, 0x18
and edx, esi
or eax, esi
xor eax, ebx
mov esi, eax
and esi, edx
xor eax, edx
sub ecx, esi
sub ebx, eax
lea eax, [ebx + ecx*2]
mov dword [esp], eax
mov eax, dword [esp]
add al, 0x58
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 8], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 0xb
jb 0x43bc30
mov eax, dword [esp + 8]
mov ecx, dword [0x44b1ac]
test ecx, ecx
je 0x43bcd0
xor edx, edx
mov esi, dword [0x44b1b0]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [esi + edx*8], 0xb33e16a3
je 0x43bcb0
inc edx
cmp ecx, edx
jne 0x43bca0
jmp 0x43bcd0
mov ecx, dword [esi + edx*8 + 4]
cmp ecx, eax
je 0x43bcd0
push 0
push 0
push dword [ebp + 8]
push 3
push dword [0x44b1b4]
push ecx
call fcn.00438da0
add esp, 0x18
test eax, eax
js 0x43bcd8
mov eax, dword [esp + 0x1c]
test edi, edi
je 0x43bceb
xor ecx, ecx
cmp eax, 0xc0000011
je 0x43bce9
mov ecx, dword [esp + 0x20]
mov dword [edi], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x43bd00
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x28
mov dword [esp + 8], 0xbcbdbebf
mov dword [esp + 0xc], 0
mov dword [esp + 0xf], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xa
ja 0x43bd8b
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp]
mov eax, dword [esp]
movzx edi, byte [esp + eax + 8]
lea eax, [edx - 0x4ee8d9e8]
mov ecx, eax
and ecx, edi
mov esi, eax
xor esi, edi
add edx, 0x18
and edx, edi
or eax, edi
xor eax, esi
mov edi, eax
and edi, edx
xor eax, edx
sub ecx, edi
sub esi, eax
lea eax, [esi + ecx*2]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
add al, 0x58
mov ecx, dword [esp]
mov byte [esp + ecx + 8], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xb
jb 0x43bd40
mov eax, dword [esp + 8]
mov edi, dword [0x44b1ac]
test edi, edi
je 0x43bded
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebp + 0xc]
xor ebx, ebx
mov esi, dword [0x44b1b0]
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [esi + ebx*8], 0x58c2bab5
je 0x43bdc0
inc ebx
cmp edi, ebx
jne 0x43bdb0
jmp 0x43bded
mov edi, dword [esi + ebx*8 + 4]
cmp edi, eax
je 0x43bded
lea eax, [esp + 0x1c]
push 0
push 0
push edx
push ecx
push eax
push 0
push 0
push 0
push dword [ebp + 8]
push 9
push dword [0x44b1b4]
push edi
call fcn.00438da0
add esp, 0x30
mov edi, dword [ebp + 0x14]
cmp eax, 0x103
jne 0x43bed8
mov dword [esp + 8], 0xbcbdbebf
mov dword [esp + 0xc], 0
mov dword [esp + 0xf], 0
mov dword [esp + 4], 0
mov eax, dword [esp + 4]
cmp eax, 0xa
ja 0x43be7e
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esp + 4]
mov eax, dword [esp + 4]
movzx esi, byte [esp + eax + 8]
lea eax, [edx - 0x4ee8d9e8]
mov ecx, eax
and ecx, esi
mov ebx, eax
xor ebx, esi
add edx, 0x18
and edx, esi
or eax, esi
xor eax, ebx
mov esi, eax
and esi, edx
xor eax, edx
sub ecx, esi
sub ebx, eax
lea eax, [ebx + ecx*2]
mov dword [esp], eax
mov eax, dword [esp]
add al, 0x58
mov ecx, dword [esp + 4]
mov byte [esp + ecx + 8], al
inc dword [esp + 4]
mov eax, dword [esp + 4]
cmp eax, 0xb
jb 0x43be30
mov eax, dword [esp + 8]
mov ecx, dword [0x44b1ac]
test ecx, ecx
je 0x43bed0
xor edx, edx
mov esi, dword [0x44b1b0]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [esi + edx*8], 0xb33e16a3
je 0x43beb0
inc edx
cmp ecx, edx
jne 0x43bea0
jmp 0x43bed0
mov ecx, dword [esi + edx*8 + 4]
cmp ecx, eax
je 0x43bed0
push 0
push 0
push dword [ebp + 8]
push 3
push dword [0x44b1b4]
push ecx
call fcn.00438da0
add esp, 0x18
test eax, eax
js 0x43bed8
mov eax, dword [esp + 0x1c]
test edi, edi
je 0x43bee2
mov ecx, dword [esp + 0x20]
mov dword [edi], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x43bef0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x40
mov eax, dword [ebp + 0x18]
mov esi, dword [ebp + 0x14]
mov edi, dword [ebp + 8]
mov ebx, 0xfffffffe
nop
nop
nop
nop
nop
nop
cmp word [edi + ebx + 2], 0
lea ebx, [ebx + 2]
jne 0x43bf10
sar ebx, 1
mov ecx, ebx
and ecx, 0xfffd
mov edx, ebx
and edx, 2
or ebx, 2
imul ebx, edx
xor edx, 2
imul edx, ecx
lea ecx, [edx + ebx]
mov word [esp + 4], cx
lea ecx, [edx + ebx]
add ecx, 2
mov word [esp + 6], cx
mov dword [esp + 8], edi
mov dword [esp + 0x24], 0x18
mov dword [esp + 0x28], eax
mov dword [esp + 0x30], 0x40
lea eax, [esp + 4]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x10], 0xbcbdbebf
mov dword [esp + 0x14], 0
mov dword [esp + 0x17], 0
mov dword [esp], 0
mov eax, dword [esp]
cmp eax, 0xa
ja 0x43bfeb
mov ebx, dword [esp]
mov eax, dword [esp]
movzx edx, byte [esp + eax + 0x10]
lea eax, [ebx - 0x4ee8d9e8]
mov edi, eax
and edi, edx
mov ecx, eax
xor ecx, edx
add ebx, 0x18
and ebx, edx
or eax, edx
xor eax, ecx
mov edx, eax
and edx, ebx
xor eax, ebx
sub edi, edx
sub ecx, eax
lea eax, [ecx + edi*2]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add al, 0x58
mov ecx, dword [esp]
mov byte [esp + ecx + 0x10], al
inc dword [esp]
mov eax, dword [esp]
cmp eax, 0xb
jb 0x43bfa0
mov eax, dword [esp + 0x10]
mov ecx, dword [0x44b1ac]
test ecx, ecx
je 0x43c045
xor edi, edi
mov ebx, dword [0x44b1b0]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [ebx + edi*8], 0x850a6e6
je 0x43c020
inc edi
cmp ecx, edi
jne 0x43c010
jmp 0x43c045
mov ecx, dword [ebx + edi*8 + 4]
cmp ecx, eax
je 0x43c045
lea eax, [esp + 0x24]
push esi
push eax
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push 4
push dword [0x44b1b4]
push ecx
call fcn.00438da0
add esp, 0x1c
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x1000a700
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1c
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov dword [esp + 0x20], edx
cmp dword [ebx + 0x58], 0
mov dword [esp + 0x1c], ecx
jne 0x1000a8c1
xor esi, esi
mov dword [esp + 0x14], esi
mov eax, dword [ebx + 0x58]
mov ecx, 3
cmp eax, dword [ebx + 0x5c]
jb 0x1000a794
cmp dword [ebx + 0x58], 8
jae 0x1000a73f
lea eax, [ecx + 5]
jmp 0x1000a759
mov eax, dword [ebx + 0x58]
mul ecx
test edx, edx
ja 0x1000a888
jb 0x1000a757
cmp eax, 0xffffffff
ja 0x1000a888
shr eax, 1
push 0x3b
push str.C:UsersAdmin_vcpkg_buildtreeslibgit2_src_v1.4.2_3f39c3e750.clean_src_array.h
push 0xc
push eax
mov dword [esp + 0x20], eax
mov eax, dword [ebx + 0x54]
mov esi, dword [fcn.10060f30]
mov ecx, esi
push eax
call dword [0x101aa4d8]
call esi
add esp, 0x14
test eax, eax
je 0x1000a893
mov esi, dword [esp + 0x14]
mov dword [ebx + 0x54], eax
mov eax, dword [esp + 0x10]
mov dword [ebx + 0x5c], eax
mov edx, dword [ebx + 0x58]
mov eax, dword [ebx + 0x54]
lea ecx, [edx + edx*2]
lea ecx, [eax + ecx*4]
lea eax, [edx + 1]
mov dword [ebx + 0x58], eax
test ecx, ecx
je 0x1000a86b
mov eax, dword [esi + 0x101fe1a0]
mov dword [ecx], eax
mov eax, dword [esi + 0x101fe1a8]
add esi, 0xc
mov dword [ecx + 8], eax
mov dword [esp + 0x14], esi
cmp esi, 0x18
jb 0x1000a727
test byte [ebx + 0x60], 1
jne 0x1000a8c1
lea esi, [ebx + 0x78]
xor ecx, ecx
xor eax, eax
lock cmpxchg dword [esi], ecx
mov edx, eax
mov dword [esp + 0x18], edx
cmp edx, 0xffffffff
jne 0x1000a821
mov edx, ebx
lea ecx, [esp + 0x24]
call fcn.10009d00
test eax, eax
js 0x1000a82a
mov edx, dword [esp + 0x24]
lea ecx, [esp + 0x18]
push 3
call fcn.10042cf0
add esp, 4
test eax, eax
js 0x1000a82a
mov edx, dword [esp + 0x18]
or eax, 0xffffffff
mov ecx, edx
lock cmpxchg dword [esi], ecx
mov esi, fcn.10041160
test edx, edx
je 0x1000a82f
mov esi, fcn.10041190
mov edx, dword [ebx + 0x38]
test edx, edx
je 0x1000a841
mov ecx, ebx
call fcn.1000a650
test eax, eax
js 0x1000a86b
mov eax, dword [ebx + 0x3c]
test eax, eax
je 0x1000a8c1
push dword [ebx + 0x44]
mov ecx, esi
push eax
call dword [0x101aa4d8]
call esi
add esp, 8
test eax, eax
jne 0x1000a8c1
mov edx, dword [ebx + 0x3c]
mov ecx, ebx
call fcn.1000a650
test eax, eax
jns 0x1000a8c1
mov ecx, dword [esp + 0x1c]
xor al, al
mov dword [ecx], str..git
mov ecx, dword [esp + 0x20]
mov dword [ecx], 2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.1002d4d0
mov dword [eax], str.Out_of_memory
mov eax, dword [ebx + 0x54]
mov esi, dword [fcn.10034de0]
mov ecx, esi
push eax
call dword [0x101aa4d8]
call esi
mov dword [ebx + 0x5c], 0
add esp, 4
mov dword [ebx + 0x58], 0
mov dword [ebx + 0x54], 0
jmp 0x1000a86b
mov ecx, dword [esp + 0x1c]
mov eax, dword [ebx + 0x54]
pop edi
pop esi
mov dword [ecx], eax
mov ecx, dword [esp + 0x18]
mov eax, dword [ebx + 0x58]
pop ebx
mov dword [ecx], eax
mov al, 1
mov esp, ebp
pop ebp
ret