joyce8/EMBER2024-capa huggingface dataset:
Function at 0x4495c7
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
cmp eax, dword [esi + 0x7c]
jae 0x4495b4
movzx ecx, word [eax]
cmp dword [ebp - 0x14], ecx
or byte [ecx], bh
dec ebp
in al, dx
je 0x4495d9
cmp edi, ecx
je 0x4495d9
add eax, 2
inc edx
mov dword [ebp - 8], eax
cmp edx, dword [ebp - 0x18]
jl 0x449595
jmp 0x4495d9
cmp dword [esi + 0x8c], 0
je 0x4495d9
cmp eax, dword [esi + 0x88]
jbe 0x4495d9
mov dword [esi + 0x68], 1

Function at 0x4496bc
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [ebp - 8]
cmp eax, dword [esi + 0x7c]
jae 0x44d08a
movzx eax, word [eax]
add dword [ebp - 8], 2
cmp ecx, eax
je case.0x408896.157
inc edi
cmp edi, edx
jle 0x44969e
mov eax, dword [ebp - 8]
cmp edx, dword [ebp - 0x18]
je 0x408b79
cmp dword [ebp - 0x10], 0
jne 0x44d0bc
cmp dword [ebp - 0x28], 0
mov edi, eax
mov dword [ebp - 0x20], edi
je 0x4497d2
cmp edx, dword [ebp - 0x18]
jge 0x449744
cmp eax, dword [esi + 0x7c]
jae 0x4497a8
movzx edi, word [eax]
mov ecx, dword [ebp - 8]
mov eax, edi
and eax, 0xfc00
cmp eax, 0xd800
jne 0x449726
movzx eax, word [ecx + 2]
and edi, 0x3ff
and eax, 0x3ff
shl edi, 0xa
or edi, eax
mov eax, 2
add edi, 0x10000
jmp 0x44972b
mov eax, 1
cmp dword [ebp - 0x14], edi
je 0x44973e
lea ecx, [ecx + eax*2]
inc edx
mov eax, ecx
mov dword [ebp - 8], ecx
cmp edx, dword [ebp - 0x18]
jl 0x4496e8
mov eax, dword [ebp - 8]
mov edi, dword [ebp - 0x20]
cmp dword [ebp - 0x2c], 0
invalid
test dword [ebx], ebp
Function at 0x44a103
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [esi + 0x7c]
mov dword [ebp - 0x1c], eax
cmp edi, eax
jae 0x44a9d7
movzx edx, word [edi]
add edi, 2
cmp dword [ebp - 0x28], 0
mov eax, edi
mov dword [ebp - 8], edi
mov ecx, edx
mov dword [ebp - 0x24], eax
je 0x44a0b7
mov dword [ebp - 0x24], eax
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x44a0b7
movzx ecx, word [edi]
and edx, 0x3ff
add edi, 2
shl edx, 0xa
and ecx, 0x3ff
mov dword [ebp - 8], edi
mov eax, edi
or ecx, edx
mov dword [ebp - 0x24], eax
add ecx, 0x10000
mov edx, dword [ebp - 0x24]
mov eax, ecx
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x4bff40]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4b1c40]
movzx ecx, byte [eax*8 + 0x4af3f2]
mov eax, dword [esi + 0x7c]
mov dword [ebp - 0x38], ecx
cmp edx, eax
jae 0x44a18a
mov eax, edx
mov ebx, ecx
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x28], 0
mov esi, 1
movzx ecx, word [edi]
je 0x44a12e
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x44a12e
movzx eax, word [edi + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov esi, 2
add ecx, 0x10000
mov edx, dword [ebp - 0x24]
mov eax, ecx
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x4bff40]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4b1c40]
movzx ecx, byte [eax*8 + 0x4af3f2]
mov eax, 1
shl eax, cl
test dword [ebx*4 + 0x4c21f0], eax
je 0x44a17e
mov eax, edx
mov ebx, ecx
lea edi, [eax + esi*2]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], edi
mov edx, edi
cmp edi, eax
jb 0x44a0f3
jmp 0x44a181
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebp + 0x10]
mov ebx, dword [ebp - 0x30]
mov dword [ebp - 8], edi
cmp dword [esi + 0x8c], 0
je 0x44a1b3
cmp edx, eax
jb 0x44a1b3
cmp edx, dword [esi + 0x88]
jbe 0x44a1b3
mov dword [esi + 0x68], 1
cmp dword [esi + 0x8c], 1
jg 0x44e351
mov ecx, dword [ebp - 0x34]
inc ecx
mov dword [ebp - 0x34], ecx
cmp ecx, dword [ebp - 0xc]
jle 0x44a05d
mov ecx, dword [ebp - 0xc]
Function at 0x44a903
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
call 0x7dcfa94c
clc
mov dword [ebp - 0x1c], 1
cmp ecx, 1
jl 0x44a1c9
mov ecx, dword [esi + 0x7c]
cmp edi, ecx
jae 0x44a9d7
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44a946
lea eax, [esi + 0x1c]
push 0
push eax
push ecx
mov ecx, edi
call fcn.00450a13
add esp, 0xc
test eax, eax
jne case.0x408896.157
jmp 0x44a972
mov edx, dword [esi + 0x1c]
lea eax, [edx + edx]
sub ecx, eax
cmp edi, ecx
ja 0x44a972
mov ax, word [edi]
cmp ax, word [esi + 0x34]
jne 0x44a972
cmp edx, 1
je case.0x408896.157
mov ax, word [edi + 2]
cmp ax, word [esi + 0x36]
inc esi
je case.0x408896.157
cmp dword [esi + 0x8c], 0
je 0x44a9ac
lea eax, [edi + 2]
cmp eax, dword [esi + 0x7c]
jb 0x44a9ac
cmp dword [esi + 0x18], 0
jne 0x44a9ac
cmp dword [esi + 0x1c], 2
jne 0x44a9ac
mov ax, word [edi]
cmp ax, word [esi + 0x34]
jne 0x44a9ac
mov dword [esi + 0x68], 1
cmp dword [esi + 0x8c], 1
jg 0x44e351
mov eax, dword [ebp - 0x1c]
add edi, 2
mov ecx, dword [ebp - 0xc]
inc eax
mov dword [ebp - 8], edi
mov dword [ebp - 0x1c], eax
cmp eax, ecx
invalid
invalid

Function at 0x44aa24
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
jmp fcn.00408e10
mov edi, dword [ebp - 8]
mov edx, 1
cmp ecx, edx
jl 0x44a1c6
mov ecx, dword [esi + 0x7c]
cmp edi, ecx
jae 0x44a9d7
movzx eax, word [edi]
add edi, 2
mov dword [ebp - 8], edi
cmp eax, 0xd
Function at 0x44b10e
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
cmp edi, dword [esi + 0x7c]
jae 0x44afba
cmp dword [ebp - 0x28], 0
movzx edx, word [edi]
mov ecx, edx
mov dword [ebp - 0x38], 1
je 0x44b0f9
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
fadd dword [eax]
add byte [ebp + 0x22], dh
fadd dword [eax]
add byte [ebp + 0x22], dh
movzx ecx, word [edi + 2]
and edx, 0x3ff
shl edx, 0xa
and ecx, 0x3ff
or ecx, edx
mov edx, 2
add ecx, 0x10000
jmp 0x44b0fe
mov edx, dword [ebp - 0x38]
jmp 0x44b0fe
mov edx, 1
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4bff40]
shl eax, 7
loopne 0x44b117
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4b1c40]
movzx eax, byte [eax*8 + 0x4af3f1]
cmp eax, dword [ebp - 0x40]
sete cl
cmp ecx, dword [ebp - 0x3c]
je 0x44b65e
mov eax, dword [ebp - 0xc]
lea edi, [edi + edx*2]
inc eax
mov dword [ebp - 8], edi
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp - 0x14]
jl 0x44b0a9

Function at 0x44b278
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
cmp edi, dword [esi + 0x7c]
jae 0x44afba
cmp dword [ebp - 0x28], 0
movzx edx, word [edi]
pop ss
mov ecx, edx
mov dword [ebp - 0x38], 1
je 0x44b255
mov eax, edx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x44b250
movzx ecx, word [edi + 2]
and edx, 0x3ff
shl edx, 0xa
and ecx, 0x3ff
add byte [ebx], cl
retf 0x2ba
add byte [eax], al
add byte [ecx + 0x10000c1], al
add bl, ch
invalid
mov edx, dword [ebp - 0x38]
jmp 0x44b25a
mov edx, 1
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4bff40]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4b1c40]
movzx eax, byte [eax*8 + 0x4af3f1]
add al, 0xc5
int1
dec edx
invalid
add al, 0xc5
int1
dec edx
add byte [ebx + 0x53508504], cl
add al, 0x85
push eax
push ebx
mov eax, dword [eax*4 + 0x4c5350]
cmp eax, 1
invalid
je 0x44b293
dec esp
add byte [ebx + 0x97401f8], al
invalid
je 0x44b293
cmp eax, 3
je 0x44b293
xor eax, eax
jmp 0x44b298
mov eax, 1
cmp eax, dword [ebp - 0x3c]
je 0x44b65e
mov eax, dword [ebp - 0xc]
lea edi, [edi + edx*2]
inc eax
mov dword [ebp - 8], edi
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp - 0x14]
jl 0x44b205
jmp 0x495d16
call dword [0x49c0b0]
mov ecx, dword [0x4d1924]
mov edx, dword [ebp - 0x10]
push eax
push edi
push 0x1109
mov ecx, dword [ecx + edx*4]
push esi
mov dword [ebp - 0x1c], eax
mov ecx, dword [ecx]
mov dword [ecx + 0x40], eax
call dword [0x49c694]
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x495dfc
push dword [ebp - 8]
push 0xffffffffffffffff
push eax
call dword [0x49c088]
cmp byte [ebp + 0xb], 0x10
mov ecx, eax
mov dword [ebp - 0x10], ecx
jne 0x495df7
test byte [ebp + 0x10], 2
mov eax, dword [ebp - 0x14]
je 0x495d73
mov dword [eax + 0x1b4], ecx
test byte [ebp + 0x10], 4
je 0x495df7
mov dword [eax + 0x1b8], ecx
jmp 0x495df7
Function at 0x44b35a
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
mov eax, 1
mov dword [ebp - 0x24], eax
cmp edi, dword [esi + 0x7c]
jae 0x44b3f8
cmp dword [ebp - 0x28], 0
movzx ecx, word [edi]
mov edx, ecx
je 0x44b318
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x44b315
movzx eax, word [edi + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov eax, 2
add ecx, 0x10000
mov dword [ebp - 0x24], eax
mov edx, ecx
jmp 0x44b318
mov eax, dword [ebp - 0x24]
cmp ecx, 0x180e
ja 0x44b35e
je 0x44b3d3
cmp ecx, 0x85
ja 0x44b34c
je 0x44b3d3
cmp ecx, 9
jb case.0x44b37a.8203
cmp ecx, 0xd
jbe 0x44b3d3
cmp ecx, 0x20
jne case.0x44b37a.8203
jmp 0x495b1b
cmp ecx, 0xa0
je 0x44b3d3
cmp ecx, 0x1680
jne case.0x44b37a.8203
jmp 0x44b3d3
cmp ecx, 0x202f
mov eax, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4bff40]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x4b1c40]
movzx eax, byte [eax*8 + 0x4af3f1]
add al, 0xc5
int1
dec edx
add byte [ebx + 0x5350853c], al
dec esp
add byte [esi], al
sete cl
cmp ecx, dword [ebp - 0x3c]
je 0x44b65e
mov eax, dword [ebp - 0x24]
jmp 0x44b3dd
cmp dword [ebp - 0x3c], 0
jne 0x44b65e
lea edi, [edi + eax*2]
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 8], edi
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp - 0x14]
jl 0x44b2c5
jmp 0x495e52
cmp dword [esi + 0x8c], 0
je 0x44b65e
cmp edi, dword [esi + 0x88]
jbe 0x44b65e
mov dword [esi + 0x68], eax
cmp dword [esi + 0x8c], eax
jle 0x44b65e
add byte [eax], al
jmp 0x498b72
hlt
adc eax, 0x49c0a4
call dword [0x49c580]

Function at 0x44b364
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
ja 0x44b381
je 0x44b3d3
add ecx, 0xffffe000
cmp ecx, 0x29
ja case.0x44b37a.8203
movzx eax, byte [ecx + 0x44e875]
jmp dword [eax*4 + 0x44e86d]
cmp ecx, 0x205f
je 0x44b3d3
cmp ecx, 0x3000
je 0x44b3d3
mov eax, dword [ebp - 0x24]

Function at 0x44b3b1
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
add al, 0xc5
int1
dec edx
add byte [ebx + 0x5350853c], al
dec esp
add byte [esi], al
Function at 0x44b495
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
add byte [ebx + 0x488b0442], cl
or al, ch
arpl word [ecx - 0x2f750000], bp
xor eax, eax
inc eax
mov dword [esp + 0x30], edx
test dl, 2
je 0x444d3e
mov cl, al
and edx, eax
mov byte [esp + 0xf], cl
mov dword [esp + 0x30], edx
test esi, esi
je 0x444d4c
invalid
mov eax, edx
sub eax, ebx
je 0x444e03
fild dword [ebx]
invalid
sub eax, 1
jne 0x444df1
mov cl, bl
jmp 0x44b421
movzx esi, cl
mov ecx, dword [ebp + 0xc]
xor esi, eax
mov dword [esp + 0x30], esi
call fcn.0044a544
lea ecx, [esi + edi]
mov dword [esp + 0x34], eax
push ecx
xor esi, esi
inc esi
push esi
push eax
call fcn.0044abbb
add esp, 0xc
cmp byte [esp + 0xf], bl
pcmpeqw mm5, qword [eax]
push ebx
push esi
lea eax, [esp + 0x58]
inc esp
and al, 0x58
mov dword [esp + 0x58], edi
push eax
push dword [esp + 0x40]
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], esi
call fcn.0044b240
add esp, 0x10
lea ecx, [esp + 0x50]
call fcn.0045113c
test edi, edi
jle 0x4074c1
or esi, 0xffffffff
jmp 0x444e41
mov esi, ebx
mov eax, ebx
mov dword [esp + 0x14], esi
je 0x444e2e
adc al, 0x89
inc esp
and al, 0x34
test edi, edi
jle 0x407396
mov ebx, dword [esp + 0x10]
dec ebp
xlatb
add al, 0
cmp ecx, dword [ebp - 0x14]
jge 0x44b661
cmp edi, dword [esi + 0x7c]
jae 0x44afba
cmp dword [ebp - 0x28], 0
movzx ecx, word [edi]
mov edx, ecx
mov dword [ebp - 0x1c], 1
je 0x44b479
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x44b479
movzx edx, word [edi + 2]
and ecx, 0x3ff
and edx, 0x3ff
shl ecx, 0xa
or edx, ecx
mov dword [ebp - 0x1c], 2
add edx, 0x10000
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4bff40]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4b1c40]
dec ebx
add byte [edi], cl
mov dh, 4
vpsllq xmm1, xmm1, xmmword [edx]
mov eax, dword [eax*4 + 0x4c5350]
cmp eax, 1
je 0x44b4b9
cmp eax, 3
je 0x44b4b9
cmp edx, 0x5f
je 0x44b4b9
xor eax, eax
jmp 0x44b4be
mov eax, 1
cmp eax, dword [ebp - 0x3c]
je 0x44b65e
mov eax, dword [ebp - 0x1c]
lea edi, [edi + eax*2]
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 8], edi
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp - 0x14]
jl 0x44b42e
jmp 0x495f3f
Function at 0x44b6dd
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [esi + 0x7c]
mov dword [ebp - 0x1c], eax
cmp edi, eax
jae 0x44b83f
movzx edx, word [edi]
add edi, 2
cmp dword [ebp - 0x28], 0
mov ecx, edx
mov dword [ebp - 8], edi
mov dword [ebp - 0x24], edi
je 0x44b731
mov eax, edx
mov dword [ebp - 0x24], edi
and eax, 0xfc00
cmp eax, 0xd800
jne 0x44b731
movzx ecx, word [edi]
and edx, 0x3ff
and ecx, 0x3ff
inc dword [ebx]
add byte [eax], al
shl edx, 0xa
add edi, 2
or ecx, edx
mov dword [ebp - 8], edi
add ecx, 0x10000
mov dword [ebp - 0x24], edi
mov edx, dword [ebp - 0x24]
mov eax, ecx
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x4bff40]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4b1c40]
movzx ecx, byte [eax*8 + 0x4af3f2]
mov eax, dword [esi + 0x7c]
mov dword [ebp - 0x38], ecx
cmp edx, eax
jae 0x44b804
mov eax, edx
mov ebx, ecx
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x28], 0
mov esi, 1
movzx ecx, word [edi]
je 0x44b7a8
invalid
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x44b7a8
movzx eax, word [edi + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov esi, 2
add ecx, 0x10000
mov edx, dword [ebp - 0x24]
mov eax, ecx
shr eax, 7
pop es
and ecx, 0x7f
movzx eax, byte [eax + 0x4bff40]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4b1c40]
movzx ecx, byte [eax*8 + 0x4af3f2]
mov eax, 1
shl eax, cl
test dword [ebx*4 + 0x4c21f0], eax
je 0x44b7f8
mov eax, edx
mov ebx, ecx
lea edi, [eax + esi*2]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], edi
mov edx, edi
cmp edi, eax
jb 0x44b76d
jmp 0x44b7fb
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebp + 0x10]
mov ebx, dword [ebp - 0x30]
mov dword [ebp - 8], edi
cmp dword [esi + 0x8c], 0
je 0x44b82d
cmp edx, eax
jb 0x44b82d
cmp edx, dword [esi + 0x88]
jbe 0x44b82d
mov dword [esi + 0x68], 1
cmp dword [esi + 0x8c], 1
jg 0x44e351
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp - 0x14]
jl 0x44b6db
jmp 0x44b864
cmp dword [esi + 0x8c], 0
je 0x44b864
cmp edi, dword [esi + 0x88]
jbe 0x44b864
mov dword [esi + 0x68], 1
cmp dword [esi + 0x8c], 1
jg 0x44e351
mov edx, dword [ebp - 0x10]
cmp dword [ebp - 0x2c], 0
jne 0x408b79
cmp edi, edx
jbe 0x408992
mov eax, dword [ebp + 0x18]
mov edx, ebx
inc eax
mov ecx, edi
push eax
push dword [ebp + 0x14]
push esi
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0045349d
add esp, 0x14
test eax, eax
jne 0x4089db
add edi, 0xfffffffe
mov dword [ebp - 8], edi
cmp dword [ebp - 0x28], eax
jne 0x44c77e
movzx ecx, word [edi]
jmp 0x497473
add al, 0
mov ax, word [edi]
mov ecx, 0xfc00
Function at 0x44b7df
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
mov eax, dword [esi + 0x7c]
mov dword [ebp - 0x1c], eax
cmp edi, eax
jae 0x44b83f
movzx edx, word [edi]
add edi, 2
cmp dword [ebp - 0x28], 0
mov ecx, edx
mov dword [ebp - 8], edi
mov dword [ebp - 0x24], edi
je 0x44b731
mov eax, edx
mov dword [ebp - 0x24], edi
and eax, 0xfc00
cmp eax, 0xd800
jne 0x44b731
movzx ecx, word [edi]
and edx, 0x3ff
and ecx, 0x3ff
inc dword [ebx]
add byte [eax], al
shl edx, 0xa
add edi, 2
or ecx, edx
mov dword [ebp - 8], edi
add ecx, 0x10000
mov dword [ebp - 0x24], edi
mov edx, dword [ebp - 0x24]
mov eax, ecx
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x4bff40]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4b1c40]
movzx ecx, byte [eax*8 + 0x4af3f2]
mov eax, dword [esi + 0x7c]
mov dword [ebp - 0x38], ecx
cmp edx, eax
jae 0x44b804
mov eax, edx
mov ebx, ecx
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x28], 0
mov esi, 1
movzx ecx, word [edi]
je 0x44b7a8
invalid
mov eax, ecx
and eax, 0xfc00
cmp eax, 0xd800
jne 0x44b7a8
movzx eax, word [edi + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov esi, 2
add ecx, 0x10000
mov edx, dword [ebp - 0x24]
mov eax, ecx
shr eax, 7
pop es
and ecx, 0x7f
movzx eax, byte [eax + 0x4bff40]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x4b1c40]
movzx ecx, byte [eax*8 + 0x4af3f2]
mov eax, 1
shl eax, cl
test dword [ebx*4 + 0x4c21f0], eax
je 0x44b7f8
mov eax, edx
mov ebx, ecx
lea edi, [eax + esi*2]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], edi
mov edx, edi
cmp edi, eax
jb 0x44b76d
jmp 0x44b7fb
mov eax, dword [ebp - 0x1c]
mov esi, dword [ebp + 0x10]
mov ebx, dword [ebp - 0x30]
mov dword [ebp - 8], edi
cmp dword [esi + 0x8c], 0
je 0x44b82d
cmp edx, eax
jb 0x44b82d
cmp edx, dword [esi + 0x88]
jbe 0x44b82d
mov dword [esi + 0x68], 1
cmp dword [esi + 0x8c], 1
jg 0x44e351
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp - 0x14]
jl 0x44b6db
jmp 0x44b864
cmp dword [esi + 0x8c], 0
je 0x44b864
cmp edi, dword [esi + 0x88]
jbe 0x44b864
mov dword [esi + 0x68], 1
cmp dword [esi + 0x8c], 1
jg 0x44e351
mov edx, dword [ebp - 0x10]
cmp dword [ebp - 0x2c], 0
jne 0x408b79
cmp edi, edx
jbe 0x408992
mov eax, dword [ebp + 0x18]
mov edx, ebx
inc eax
mov ecx, edi
push eax
push dword [ebp + 0x14]
push esi
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0045349d
add esp, 0x14
test eax, eax
jne 0x4089db
add edi, 0xfffffffe
mov dword [ebp - 8], edi
cmp dword [ebp - 0x28], eax
jne 0x44c77e
movzx ecx, word [edi]
jmp 0x497473
add al, 0
mov ax, word [edi]
mov ecx, 0xfc00
Function at 0x44b93c
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
cmp edi, eax
jae 0x44b9b2
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44b909
push dword [ebp - 0x28]
lea ecx, [esi + 0x1c]
push ecx
push eax
mov ecx, edi
call fcn.004519d7
add esp, 0xc
test eax, eax
je 0x44b938
jmp 0x4966dc
mov ecx, dword [esi + 0x1c]
mov edx, dword [ebp - 0x24]
lea eax, [ecx + ecx]
sub edx, eax
cmp edi, edx
ja 0x44b938
mov ax, word [edi]
cmp ax, word [esi + 0x34]
jne 0x44b938
cmp ecx, 1
je 0x44b9d7
mov ax, word [edi + 2]
cmp ax, word [esi + 0x36]
je 0x44b9d7
cmp dword [esi + 0x8c], 0
je 0x44b972
lea eax, [edi + 2]
cmp eax, dword [esi + 0x7c]
jb 0x44b972
cmp dword [esi + 0x18], 0
jne 0x44b972
cmp dword [esi + 0x1c], 2
jne 0x44b972
mov ax, word [edi]
cmp ax, word [esi + 0x34]
jne 0x44b972
mov dword [esi + 0x68], 1
cmp dword [esi + 0x8c], 1
jg 0x44e351
mov eax, dword [esi + 0x7c]
add edi, 2
mov dword [ebp - 8], edi
clc
clc
mov dword [ebp - 0x24], eax
cmp edi, eax
jae 0x44b9a0
mov ax, word [edi]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
mov eax, dword [ebp - 0x24]
jne 0x44b9a0
add edi, 2
mov dword [ebp - 8], edi
mov ecx, dword [ebp - 0xc]
inc ecx
mov dword [ebp - 0xc], ecx
cmp ecx, dword [ebp - 0x14]
jl 0x44b8df
jmp 0x44b9d7
and al, 0x24

Function at 0x44b97a
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
cmp edi, eax
jae 0x44b9b2
mov edx, dword [esi + 0x18]
test edx, edx
je 0x44b909
push dword [ebp - 0x28]
lea ecx, [esi + 0x1c]
push ecx
push eax
mov ecx, edi
call fcn.004519d7
add esp, 0xc
test eax, eax
je 0x44b938
jmp 0x4966dc
mov ecx, dword [esi + 0x1c]
mov edx, dword [ebp - 0x24]
lea eax, [ecx + ecx]
sub edx, eax
cmp edi, edx
ja 0x44b938
mov ax, word [edi]
cmp ax, word [esi + 0x34]
jne 0x44b938
cmp ecx, 1
je 0x44b9d7
mov ax, word [edi + 2]
cmp ax, word [esi + 0x36]
je 0x44b9d7
cmp dword [esi + 0x8c], 0
je 0x44b972
lea eax, [edi + 2]
cmp eax, dword [esi + 0x7c]
jb 0x44b972
cmp dword [esi + 0x18], 0
jne 0x44b972
cmp dword [esi + 0x1c], 2
jne 0x44b972
mov ax, word [edi]
cmp ax, word [esi + 0x34]
jne 0x44b972
mov dword [esi + 0x68], 1
cmp dword [esi + 0x8c], 1
jg 0x44e351
mov eax, dword [esi + 0x7c]
add edi, 2
mov dword [ebp - 8], edi
clc
clc
mov dword [ebp - 0x24], eax
cmp edi, eax
jae 0x44b9a0
mov ax, word [edi]
mov ecx, 0xfc00
and ax, cx
mov ecx, 0xdc00
cmp ax, cx
mov eax, dword [ebp - 0x24]
jne 0x44b9a0
add edi, 2
mov dword [ebp - 8], edi
mov ecx, dword [ebp - 0xc]
inc ecx
mov dword [ebp - 0xc], ecx
cmp ecx, dword [ebp - 0x14]
jl 0x44b8df
jmp 0x44b9d7
and al, 0x24
Function at 0x44bd12
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
mov edx, 1
cmp edi, dword [esi + 0x7c]
jae 0x44bcd4
movzx ecx, word [edi]
mov eax, ecx
shl dword [0xfc00], 0x3d
add al, bl
add byte [eax], al
jne 0x44bd3e
movzx eax, word [edi + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add al, byte [eax]
add byte [eax], al
add ecx, 0x10000
cmp ecx, 0x85
ja 0x44bd7f
je 0x44bd8a
cmp ecx, 0xa
jb 0x44bd52
cmp ecx, 0xd
jbe 0x44bd8a
xor ecx, ecx
mov esi, dword [ebp + 0x10]
xor eax, eax
cmp dword [ebp - 0x20], 0x14
sete al
cmp ecx, eax
je 0x44b9d7
mov eax, dword [ebp - 0xc]
lea edi, [edi + edx*2]
inc eax
mov dword [ebp - 8], edi
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp - 0x14]
jl 0x44bd04
jmp 0x496b52
lea eax, [ecx - 0x2028]
cmp eax, 1
ja 0x44bd52
mov ecx, 1
jmp 0x44bd54
add dword [edi - 1], edx
adc eax, 0x49c660

Function at 0x44bd6b
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
mov edx, 1
cmp edi, dword [esi + 0x7c]
jae 0x44bcd4
movzx ecx, word [edi]
mov eax, ecx
shl dword [0xfc00], 0x3d
add al, bl
add byte [eax], al
jne 0x44bd3e
movzx eax, word [edi + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov edx, 2
add al, byte [eax]
add byte [eax], al
add ecx, 0x10000
cmp ecx, 0x85
ja 0x44bd7f
je 0x44bd8a
cmp ecx, 0xa
jb 0x44bd52
cmp ecx, 0xd
jbe 0x44bd8a
xor ecx, ecx
mov esi, dword [ebp + 0x10]
xor eax, eax
cmp dword [ebp - 0x20], 0x14
sete al
cmp ecx, eax
je 0x44b9d7
mov eax, dword [ebp - 0xc]
lea edi, [edi + edx*2]
inc eax
mov dword [ebp - 8], edi
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp - 0x14]
jl 0x44bd04
jmp 0x496b52
lea eax, [ecx - 0x2028]
cmp eax, 1
ja 0x44bd52
mov ecx, 1
jmp 0x44bd54
add dword [edi - 1], edx
adc eax, 0x49c660

Function at 0x44c06d
Capabilities:
Authenticate hmac
Encode data using base64
Encrypt data using speck
Parse credit card information
Resolve function by parsing pe exports

Disassembly:
cmp edi, dword [esi + 0x7c]
jae 0x44c0a5
movzx ecx, word [edi]
mov eax, ecx
mov dword [ebp - 0x1c], 1
and eax, 0xfc00
mov edx, ecx
cmp eax, 0xd800
jne 0x44c072
movzx eax, word [edi + 2]
and ecx, 0x3ff
and eax, 0x3ff
shl ecx, 0xa
or ecx, eax
mov dword [ebp - 0x1c], 2
add ecx, 0x10000
add byte [ecx], al
invalid
mov edx, ecx
add byte [ecx], al
add byte [ebx + 0xfa81d1], cl
add dword [eax], eax
add byte [edi], cl
sbb dword [ecx - 7], 0xffffffff
dec dword [ebx + 0x4f64446]
add dword [eax], edx
cmp edx, 0x100
jae 0x44b9d7
mov eax, dword [esi + 0x44]
test byte [ecx + eax], 0x10
je 0x44b9d7
mov eax, dword [ebp - 0x1c]
lea edi, [edi + eax*2]
mov eax, dword [ebp - 0xc]
inc eax
mov dword [ebp - 8], edi
mov dword [ebp - 0xc], eax
cmp eax, dword [ebp - 0x14]
jl 0x44c030
jmp 0x496e78
cmp dword [esi + 0x8c], 0
je 0x44b9d7
cmp edi, dword [esi + 0x88]
jbe 0x44b9d7
mov dword [esi + 0x68], 1
cmp dword [esi + 0x8c], 1
jg 0x44e351
invalid
invalid
lodsd eax, dword [esi]