joyce8/EMBER2024-capa huggingface dataset:
Function at 0x40c220
Capabilities:
Create thread

Disassembly:
push ebx
lea eax, [edi + 0x21b70]
mov ecx, eax
push esi
lea esi, [ecx + 1]
xor ebx, ebx
nop
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x40c230
sub ecx, esi
cmp ecx, 4
jae 0x40c259
push ebx
push str.Create_Account
push str.email_address_is_too_short
push ebx
mov dword [edi + 0x21b6c], ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
pop esi
pop ebx
ret
call fcn.0040bce0
test eax, eax
jne 0x40c27d
push ebx
push str.Create_Account
push str.email_address_is_not_valid
push ebx
mov dword [edi + 0x21b6c], ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
pop esi
pop ebx
ret
lea edx, [edi + 0x21bf0]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40c288
sub eax, esi
cmp eax, 6
jae 0x40c2b1
push ebx
push str.Create_Account
push str.Passwords_6___10_is_not_CreateAcc
push ebx
mov dword [edi + 0x21b6c], ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
pop esi
pop ebx
ret
lea ecx, [edi + 0x21c70]
mov eax, edx
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x40c2e0
cmp dl, bl
je 0x40c2dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x40c2e0
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x40c2c0
xor eax, eax
jmp 0x40c2e5
sbb eax, eax
sbb eax, 0xffffffff
push ebx
cmp eax, ebx
je 0x40c304
push str.Create_Account
push str.Passwords_do_not_match
push ebx
mov dword [edi + 0x21b6c], ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
pop esi
pop ebx
ret
push ebx
push edi
push 0x40bcd0
push ebx
push ebx
call fcn.0062d507
add esp, 0x18
pop esi
mov dword [edi + 0x21658], eax
pop ebx
ret

Function at 0x40c490
Capabilities:
Create thread

Disassembly:
cmp dword [esi + 0x21638], 0
je 0x40c4b2
push 0
push 0x622
push str..Updater.cpp
push str.mainThread___NULL
call fcn.00606fa0
add esp, 0x10
cmp dword [esi + 0x21658], 0
je 0x40c4d4
push 0
push 0x623
push str..Updater.cpp
push str.loginThread___NULL
call fcn.00606fa0
add esp, 0x10
push ebx
push edi
push 0
push 0
push esi
push 0x40afe0
push 0
push 0
call fcn.0062d507
push 0
push 0
push esi
push 0x40b790
push 0
push 0
mov dword [esi + 0x21638], eax
call fcn.0062d507
add esp, 0x30
mov dword [esi + 0x22084], eax
lea edi, [esi + 0x21648]
mov ebx, 3
push 0
push 0
push esi
push 0x40b7a0
push 0
push 0
call fcn.0062d507
mov dword [edi], eax
add esp, 0x18
add edi, 4
sub ebx, 1
jne 0x40c516
pop edi
pop ebx
ret
Function at 0x40c5c0
Capabilities:
Terminate thread

Disassembly:
push ecx
push ebx
push ebp
push esi
push edi
push str.CUpdater::Stop___n
mov esi, eax
call fcn.00606c90
add esp, 4
cmp byte [esi + 0x20df4], 0
jne 0x40c5e3
mov eax, dword [esi + 0x21640]
mov edi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0x820454
call edi
lea eax, [esi + 0x20dd4]
push eax
mov dword [esp + 0x14], eax
call edi
mov eax, dword [esi + 0x21638]
mov edi, dword [sym.imp.KERNEL32.dll_TerminateThread]
mov ebp, dword [sym.imp.KERNEL32.dll_CloseHandle]
xor ebx, ebx
cmp eax, ebx
je 0x40c628
push ebx
push eax
call edi
mov ecx, dword [esi + 0x21638]
push ecx
call ebp
mov dword [esi + 0x21638], ebx
mov eax, dword [esi + 0x22084]
cmp eax, ebx
je 0x40c645
push ebx
push eax
call edi
mov edx, dword [esi + 0x22084]
push edx
call ebp
mov dword [esi + 0x22084], ebx
mov eax, dword [esi + 0x21658]
cmp eax, ebx
je 0x40c662
push ebx
push eax
call edi
mov eax, dword [esi + 0x21658]
push eax
call ebp
mov dword [esi + 0x21658], ebx
add esi, 0x21648
mov ebx, 3
lea ecx, [ecx]
mov eax, dword [esi]
test eax, eax
je 0x40c686
push 0
push eax
call edi
mov ecx, dword [esi]
push ecx
call ebp
mov dword [esi], 0
add esi, 4
sub ebx, 1
jne 0x40c670
mov edx, dword [esp + 0x10]
mov esi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
push edx
call esi
push 0x820454
call esi
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret

Function at 0x40f350
Capabilities:
Query or enumerate registry value

Disassembly:
sub esp, 8
lea eax, [esp]
push eax
push 0xf003f
push 0
push str.SoftwareArktos_Entertainment_GroupWarZ
push reloc.WS2_32.dll_accept
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x40f3a0
mov edx, dword [esp + 0xc]
lea ecx, [esp + 4]
push ecx
push edx
push eax
push eax
mov eax, dword [esp + 0x10]
push str.username
push eax
mov dword [esp + 0x1c], 0x80
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov ecx, dword [esp]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov al, 1
add esp, 8
ret 4
Function at 0x40f530
Capabilities:
Get mac address on windows

Disassembly:
sub esp, 8
push esi
push edi
push 0x11
mov dword [esp + 0xc], 4
call fcn.0062ecaf
mov edi, eax
push 0x288
mov dword [esp + 0x14], edi
call fcn.0062ecaf
mov esi, eax
add esp, 8
test esi, esi
jne 0x40f56a
push str.Error_allocating_memory_needed_to_call_GetAdaptersinfo_n
call fcn.0062eb9b
add esp, 4
lea eax, [esp + 8]
push eax
push esi
call sub.IPHLPAPI.DLL_GetAdaptersInfo
cmp eax, 0x6f
jne 0x40f59a
mov ecx, dword [esp + 8]
push ecx
call fcn.0062ecaf
mov esi, eax
add esp, 4
test esi, esi
jne 0x40f59a
push str.Error_allocating_memory_needed_to_call_GetAdaptersinfo_n
call fcn.0062eb9b
add esp, 4
lea edx, [esp + 8]
push edx
push esi
call sub.IPHLPAPI.DLL_GetAdaptersInfo
test eax, eax
jne 0x40f5f3
movzx eax, byte [esi + 0x199]
movzx ecx, byte [esi + 0x198]
movzx edx, byte [esi + 0x197]
push eax
movzx eax, byte [esi + 0x196]
push ecx
movzx ecx, byte [esi + 0x195]
push edx
movzx edx, byte [esi + 0x194]
push eax
push ecx
push edx
lea eax, [esp + 0x24]
push str._02X:_02X:_02X:_02X:_02X:_02X
push eax
call fcn.00410b00
add esp, 0x20
mov eax, edi
pop edi
pop esi
add esp, 8
ret
push esi
call fcn.0062ed79
add esp, 4
pop edi
xor eax, eax
pop esi
add esp, 8
ret
Function at 0x4125c0
Capabilities:
Access peb ldr_data
Get process heap flags

Disassembly:
push 0xffffffffffffffff
push 0x699a0b
mov eax, dword fs:[0]
push eax
sub esp, 8
push ebx
push esi
push edi
mov eax, dword [0x78f694]
xor eax, esp
push eax
lea eax, [esp + 0x18]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x14], esi
lea ecx, [esi + 4]
mov dword [esi], vtable.std::basic_streambuf_char__struct_std::char_traits_char__.0
call fcn.0062c220
push 4
mov dword [esp + 0x24], 0
call fcn.00609260
mov edi, eax
add esp, 4
test edi, edi
je 0x412642
call fcn.0062c56b
mov dword [edi], eax
call fcn.0062c399
push 0
lea ecx, [esp + 0x14]
mov ebx, eax
call fcn.0062c2bd
mov eax, dword [ebx + 4]
cmp eax, 0xffffffff
jae 0x412637
inc eax
mov dword [ebx + 4], eax
lea ecx, [esp + 0x10]
call fcn.0062c2e5
jmp 0x412644
xor edi, edi
lea eax, [esi + 8]
mov dword [esi + 0x10], eax
lea ecx, [esi + 0x18]
mov dword [esi + 0x20], ecx
lea edx, [esi + 0x1c]
mov dword [esi + 0x24], edx
mov dword [esi + 0x38], edi
lea eax, [esi + 0xc]
mov dword [esi + 0x14], eax
lea ecx, [esi + 0x28]
mov dword [esi + 0x30], ecx
lea edx, [esi + 0x2c]
mov dword [esi + 0x34], edx
mov dword [eax], 0
mov eax, dword [esi + 0x24]
mov dword [eax], 0
mov ecx, dword [esi + 0x34]
mov dword [ecx], 0
mov edx, dword [esi + 0x10]
mov dword [edx], 0
mov eax, dword [esi + 0x20]
mov dword [eax], 0
mov ecx, dword [esi + 0x30]
mov dword [ecx], 0
mov eax, esi
mov ecx, dword [esp + 0x18]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x14
ret
Function at 0x416310
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov edx, dword [esp + 4]
add edx, 0xc
mov dword [esp + 4], edx
jmp sym.WarZlauncher.exe_ZSTD_CCtxParams_getParameter
Function at 0x459b50
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x7fc
mov eax, dword [0x78f694]
xor eax, esp
mov dword [esp + 0x7f4], eax
push ebx
push ebp
push esi
push edi
xor esi, esi
push 0x40
lea eax, [esp + 0x80]
push esi
push eax
mov edi, ecx
mov dword [esp + 0x84], esi
call fcn.00630180
add esp, 0xc
push 0x44
lea ecx, [esp + 0x38]
push esi
push ecx
mov dword [esp + 0x3c], esi
call fcn.00630180
mov ebx, dword [edi]
add edi, 4
add esp, 0xc
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], edi
cmp ebx, 0x10
jbe 0x459bb6
mov eax, 0xffffffd4
jmp 0x459d3e
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x1c]
push eax
mov eax, dword [esp + 0x81c]
lea ecx, [esp + 0x80]
push ecx
mov ecx, dword [esp + 0x81c]
lea edx, [esp + 0x50c]
push edx
call fcn.00459220
add esp, 0x10
mov dword [esp + 0x2c], eax
cmp eax, 0xffffff88
ja 0x459d3e
mov edi, dword [esp + 0x1c]
cmp edi, ebx
ja 0x459bac
mov dword [esp + 0x14], edi
cmp dword [esp + edi*4 + 0x78], esi
jne 0x459c10
dec edi
cmp dword [esp + edi*4 + 0x78], esi
je 0x459c05
mov dword [esp + 0x14], edi
xor ebp, ebp
lea eax, [ebp + 1]
lea ebx, [edi + 1]
mov dword [esp + 0x20], ebp
cmp ebx, eax
jbe 0x459c33
mov ecx, ebp
add ebp, dword [esp + eax*4 + 0x78]
mov dword [esp + eax*4 + 0x34], ecx
inc eax
cmp eax, ebx
jb 0x459c20
mov dword [esp + 0x20], ebp
mov esi, dword [esp + 0x18]
xor eax, eax
mov dword [esp + 0x34], ebp
test esi, esi
jbe 0x459c6b
movzx edx, byte [esp + eax + 0x500]
mov ecx, dword [esp + edx*4 + 0x34]
mov byte [esp + ecx*2 + 0x600], al
inc eax
lea edi, [ecx + 1]
mov dword [esp + edx*4 + 0x34], edi
mov byte [esp + ecx*2 + 0x601], dl
cmp eax, esi
jb 0x459c41
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x24]
sub edx, dword [esp + 0x1c]
xor esi, esi
lea eax, [esi + 1]
dec edx
mov dword [esp + 0x34], esi
cmp ebx, eax
jbe 0x459ca2
mov ebp, dword [esp + eax*4 + 0x78]
lea ecx, [eax + edx]
shl ebp, cl
mov edi, esi
mov dword [esp + eax*4 + 0xc0], edi
inc eax
add esi, ebp
cmp eax, ebx
jb 0x459c81
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
sub ecx, edi
mov edi, dword [esp + 0x24]
inc ecx
sub edi, ecx
inc edi
cmp ecx, edi
jae 0x459d07
mov edx, ecx
neg edx
mov eax, ecx
shl eax, 4
shl edx, 4
add eax, ecx
sub edx, ecx
lea eax, [esp + eax*4 + 0xc4]
add edx, edx
mov dword [esp + 0x18], eax
add edx, edx
cmp ebx, 1
jbe 0x459cf4
lea esi, [ebx - 1]
jmp 0x459ce0
mov ebp, dword [edx + eax]
shr ebp, cl
add eax, 4
sub esi, 1
mov dword [eax - 4], ebp
jne 0x459ce0
mov ebp, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
inc ecx
add eax, 0x44
sub edx, 0x44
mov dword [esp + 0x18], eax
cmp ecx, edi
jb 0x459cd3
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
inc ecx
push ecx
push edx
lea eax, [esp + 0xc8]
push eax
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0x3c]
push ecx
mov ecx, dword [esp + 0x38]
push ebp
lea edx, [esp + 0x614]
push edx
push eax
push ecx
call fcn.00460850
mov eax, dword [esp + 0x4c]
add esp, 0x20
mov ecx, dword [esp + 0x804]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0062cbd3
add esp, 0x7fc
ret
Function at 0x461d40
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x6c
push ebx
push ebp
mov ebp, dword [esp + 0x7c]
push esi
mov esi, ecx
lea ecx, [esi + eax]
mov dword [esp + 0x24], ecx
lea ecx, [edx + ebp]
xor edx, edx
push edi
mov edi, dword [esp + 0x80]
mov ebx, dword [edi + 0x6860]
mov dword [esp + 0x18], edx
mov dword [esp + 0x80], edx
mov dword [esp + 0x14], edx
lea edx, [edi + 0x1004]
mov dword [esp + 0x1c], edx
mov edx, dword [edi + 0x6814]
mov dword [esp + 0x38], edx
mov edx, dword [edi + 0x6818]
mov dword [esp + 0x34], edx
mov edx, dword [edi + 0x681c]
mov dword [esp + 0x30], edx
mov edx, dword [edi + 0x6858]
push edx
push eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x2c], ecx
mov ecx, dword [edi + 0x685c]
mov dword [esp + 0x28], ecx
add ebx, ecx
push esi
lea ecx, [edi + 0x1808]
push eax
push ecx
mov dword [esp + 0x40], ecx
lea ecx, [esp + 0x28]
push ecx
lea ecx, [esp + 0x30]
lea edx, [esp + 0x98]
call fcn.00461590
add esp, 0x18
cmp eax, 0xffffff88
ja 0x461f65
cmp dword [esp + 0x80], 0
lea edx, [eax + esi]
je 0x461f25
mov ecx, dword [esp + 0x18]
xor eax, eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x74], eax
add eax, ecx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x28]
mov esi, 1
sub eax, edx
lea ecx, [esp + 0x48]
mov dword [esp + 0x44], esi
mov dword [esp + 0x70], esi
call fcn.0045f410
cmp eax, 0xffffff88
jbe 0x461e46
mov eax, 0xffffffec
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret
lea edx, [esp + 0x58]
push edx
mov eax, edi
lea edx, [esp + 0x4c]
call fcn.0045f510
lea eax, [esp + 0x64]
add esp, 4
push eax
mov eax, dword [esp + 0x20]
lea edx, [esp + 0x4c]
call fcn.0045f510
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0x6c]
add esp, 4
push ecx
lea edx, [esp + 0x4c]
call fcn.0045f510
add esp, 4
lea ecx, [esp + 0x48]
call fcn.00458ba0
cmp eax, 2
jg 0x461f17
jmp 0x461ea5
mov esi, 1
cmp dword [esp + 0x80], 0
je 0x461f25
sub dword [esp + 0x80], esi
lea edx, [esp + 0x3c]
push edx
lea esi, [esp + 0x4c]
call fcn.00461970
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
add esp, 4
push eax
push ecx
mov ecx, dword [esp + 0x44]
push edx
mov edx, dword [esp + 0x4c]
push ebx
lea eax, [esp + 0x30]
push eax
sub esp, 0xc
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x64]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x44]
mov dword [eax + 8], ecx
push edx
mov eax, ebp
call fcn.00461b80
add esp, 0x24
cmp eax, 0xffffff88
ja 0x461f65
mov ecx, esi
add ebp, eax
call fcn.00458ba0
cmp eax, 2
jle 0x461ea0
cmp dword [esp + 0x80], 0
jne 0x461e39
mov ecx, dword [esp + 0x20]
mov eax, ebx
sub eax, ecx
cmp ecx, ebx
ja 0x461e39
lea esi, [eax + ebp]
cmp esi, dword [esp + 0x24]
jbe 0x461f4b
mov eax, 0xffffffba
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret
test eax, eax
jbe 0x461f5c
push eax
push ecx
push ebp
call fcn.00630200
add esp, 0xc
mov ebp, esi
mov eax, ebp
sub eax, dword [esp + 0x84]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret
Function at 0x465840
Capabilities:
Create thread

Disassembly:
push ebx
mov ebx, dword [esp + 8]
push ebp
xor ebp, ebp
cmp ebx, ebp
jne 0x465851
pop ebp
xor eax, eax
pop ebx
ret
mov eax, dword [esp + 0x10]
push esi
push 0x54
cmp eax, ebp
je 0x465873
mov ecx, dword [esp + 0x20]
push ecx
call eax
push 0x54
mov esi, eax
push ebp
push esi
call fcn.00630180
add esp, 0x14
jmp 0x46587f
push 1
call fcn.006331d2
add esp, 8
mov esi, eax
cmp esi, ebp
jne 0x465889
pop esi
pop ebp
xor eax, eax
pop ebx
ret
push edi
mov edi, 1
mov dword [esi + 0x24], edi
mov eax, dword [esp + 0x18]
push 8
cmp eax, ebp
je 0x4658a8
mov edx, dword [esp + 0x24]
push edx
call eax
add esp, 8
jmp 0x4658b0
call fcn.0062ecaf
add esp, 4
mov dword [esi + 0x18], eax
lea eax, [esi + 0x30]
push eax
mov dword [esi + 0x1c], ebp
mov dword [esi + 0x20], ebp
mov dword [esi + 0x28], ebp
mov dword [esi + 0x2c], edi
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov edi, dword [sym.imp.KERNEL32.dll_InitializeConditionVariable]
lea ecx, [esi + 0x48]
push ecx
call edi
lea edx, [esi + 0x4c]
push edx
call edi
lea eax, [ebx + ebx*2]
add eax, eax
mov dword [esi + 0x50], ebp
mov ecx, dword [esp + 0x18]
add eax, eax
push eax
cmp ecx, ebp
je 0x4658fa
mov eax, dword [esp + 0x24]
push eax
call ecx
add esp, 8
jmp 0x465902
call fcn.0062ecaf
add esp, 4
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], ebp
mov ecx, dword [esp + 0x18]
mov dword [esi], ecx
mov edx, dword [esp + 0x1c]
mov dword [esi + 4], edx
mov ecx, dword [esp + 0x20]
mov dword [esi + 8], ecx
cmp eax, ebp
je 0x465983
cmp dword [esi + 0x18], ebp
je 0x465983
cmp ebx, ebp
jbe 0x465973
xor ebx, ebx
jmp 0x465930
mov edi, dword [esi + 0xc]
push 0
push 0
add edi, ebx
push edi
push 0x466590
push 0
push 0
mov dword [edi + 8], esi
mov dword [edi + 4], 0x465740
call fcn.0062d507
add esp, 0x18
mov dword [edi], eax
test eax, eax
jne 0x465965
call fcn.00633aa6
cmp dword [eax], 0
jne 0x465980
inc ebp
add ebx, 0xc
cmp ebp, dword [esp + 0x14]
jb 0x465930
mov ebx, dword [esp + 0x14]
pop edi
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], ebx
mov eax, esi
pop esi
pop ebp
pop ebx
ret
mov dword [esi + 0x10], ebp
mov eax, esi
call fcn.00465a30
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
ret
Function at 0x465ae0
Capabilities:
Create thread

Disassembly:
sub esp, 0xc
push ebp
mov ebp, dword [esp + 0x14]
cmp ebp, dword [esi + 0x10]
ja 0x465b03
test ebp, ebp
jne 0x465af9
lea eax, [ebp + 1]
pop ebp
add esp, 0xc
ret
mov dword [esi + 0x14], ebp
xor eax, eax
pop ebp
add esp, 0xc
ret
mov eax, dword [esi + 4]
mov ecx, dword [esi]
mov edx, dword [esi + 8]
mov dword [esp + 8], eax
lea eax, [ebp + ebp*2]
add eax, eax
add eax, eax
push edi
push eax
test ecx, ecx
je 0x465b25
push edx
call ecx
add esp, 8
jmp 0x465b2d
call fcn.0062ecaf
add esp, 4
mov edi, eax
test edi, edi
jne 0x465b3c
lea eax, [edi + 1]
pop edi
pop ebp
add esp, 0xc
ret
mov eax, dword [esi + 0x10]
mov edx, dword [esi + 0xc]
lea ecx, [eax + eax*2]
add ecx, ecx
add ecx, ecx
push ecx
push edx
push edi
call fcn.00630200
mov eax, dword [esi]
mov ecx, dword [esi + 4]
mov edx, dword [esi + 8]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0xc]
add esp, 0xc
test eax, eax
je 0x465b7c
push eax
test ecx, ecx
je 0x465b74
push edx
call ecx
add esp, 8
jmp 0x465b7c
call fcn.0062ed79
add esp, 4
push ebx
mov ebx, dword [esi + 0x10]
mov dword [esi + 0xc], edi
cmp ebx, ebp
jae 0x465bc8
lea ecx, [ebx + ebx*2]
lea edi, [edi + ecx*4]
lea ecx, [ecx]
push 0
push 0
push edi
push 0x466590
push 0
push 0
mov dword [edi + 8], esi
mov dword [edi + 4], 0x465740
call fcn.0062d507
add esp, 0x18
mov dword [edi], eax
test eax, eax
jne 0x465bc0
call fcn.00633aa6
cmp dword [eax], 0
jne 0x465bd7
inc ebx
add edi, 0xc
cmp ebx, ebp
jb 0x465b90
pop ebx
pop edi
mov dword [esi + 0x10], ebp
mov dword [esi + 0x14], ebp
xor eax, eax
pop ebp
add esp, 0xc
ret
mov dword [esi + 0x10], ebx
pop ebx
pop edi
mov eax, 1
pop ebp
add esp, 0xc
ret

Function at 0x46cca0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, dword [esp + 0xc]
push esi
push edi
mov edi, dword [esp + 0x10]
mov eax, dword [edi + 8]
cmp eax, dword [ebp + 8]
mov esi, ecx
je 0x46ccbd
pop edi
pop esi
xor al, al
pop ebp
ret 8
push ebx
xor ebx, ebx
cmp eax, ebx
jne 0x46ccde
cmp byte [esi + 0x11], bl
mov dword [esi + 8], ebx
je 0x46cd4a
mov dword [esi + 0x14], ebx
mov dword [esi + 0xc], ebx
mov byte [esi + 0x11], bl
pop ebx
pop edi
pop esi
mov al, 1
pop ebp
ret 8
cmp byte [esi + 0x10], 0xdb
je 0x46ccf6
push ebx
call fcn.0047ab30
add esp, 4
pop ebx
pop edi
pop esi
xor al, al
pop ebp
ret 8
cmp dword [esi + 0xc], eax
jae 0x46cd05
push eax
call fcn.00468910
cmp al, bl
je 0x46cd1a
mov eax, dword [edi + 8]
mov ecx, dword [esi + 0xc]
cmp eax, ecx
mov dword [esi + 8], eax
jbe 0x46cd15
mov dword [esi + 8], ecx
cmp dword [esi + 0x14], ebx
jne 0x46cd23
pop ebx
pop edi
pop esi
xor al, al
pop ebp
ret 8
xor eax, eax
cmp dword [edi + 8], ebx
jbe 0x46cd4a
lea ebx, [ebx]
mov ecx, dword [edi + 0x14]
mov edx, dword [ebp + 0x14]
mov cl, byte [ecx + eax]
xor cl, byte [edx + eax]
mov edx, dword [esi + 0x14]
mov byte [eax + edx], cl
add eax, 1
cmp eax, dword [edi + 8]
jb 0x46cd30
pop ebx
pop edi
pop esi
mov al, 1
pop ebp
ret 8
Function at 0x484530
Capabilities:
Parse credit card information

Disassembly:
sub esp, 0x10
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov ebp, dword [edi + 0x6c]
xor edx, edx
xor esi, esi
test ebp, ebp
mov dword [esp + 0x14], edi
jbe 0x484721
mov ebx, dword [edi + 0xc]
nop
mov al, byte [ebx + edx]
movzx ecx, al
movzx ecx, byte [ecx + 0x6d4268]
test ecx, ecx
jne 0x4845a2
cmp al, 0x41
jb 0x484569
cmp al, 0x5a
jbe 0x4845a8
cmp al, 0x61
jb 0x484571
cmp al, 0x7a
jbe 0x4845a8
cmp al, 0x30
jb 0x484579
cmp al, 0x39
jbe 0x4845a8
cmp al, 0x3d
je 0x4845a8
cmp al, 0x3f
je 0x4845a8
cmp al, 0x26
je 0x4845a8
cmp al, 0x2f
je 0x4845a8
cmp al, 0x2d
je 0x4845a8
cmp al, 0x5f
je 0x4845a8
cmp al, 0x25
je 0x4845a8
cmp al, 0x2e
je 0x4845a8
cmp al, 0x7e
je 0x4845a8
add esi, 1
jmp 0x4845a8
lea esi, [esi + ecx + 1]
add edx, ecx
add edx, 1
cmp edx, ebp
jb 0x484550
test esi, esi
je 0x484721
lea ebx, [esi + esi + 4]
lea eax, [ebx + ebp]
push eax
mov dword [esp + 0x20], ebx
call fcn.0047e520
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x4845db
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x10
ret
xor edx, edx
xor esi, esi
cmp dword [edi + 0x6c], edx
mov dword [esp + 0x10], edx
jbe 0x4846d7
lea esp, [esp]
mov eax, dword [edi + 0xc]
mov al, byte [edx + eax]
movzx ecx, al
movzx ecx, byte [ecx + 0x6d4268]
test ecx, ecx
mov dword [esp + 0x18], ecx
jne 0x484674
cmp al, 0x41
jb 0x484610
cmp al, 0x5a
jbe 0x484665
cmp al, 0x61
jb 0x484618
cmp al, 0x7a
jbe 0x484665
cmp al, 0x30
jb 0x484620
cmp al, 0x39
jbe 0x484665
cmp al, 0x3d
je 0x484665
cmp al, 0x3f
je 0x484665
cmp al, 0x26
je 0x484665
cmp al, 0x2f
je 0x484665
cmp al, 0x2d
je 0x484665
cmp al, 0x5f
je 0x484665
cmp al, 0x25
je 0x484665
cmp al, 0x2e
je 0x484665
cmp al, 0x7e
je 0x484665
mov byte [esi + ebp], 0x25
add esi, 1
lea edx, [esi + ebp]
movzx eax, al
push edx
push eax
call fcn.0047dd10
add esp, 8
add esi, 2
add dword [esp + 0x10], 1
jmp 0x4846c6
mov byte [esi + ebp], al
add esi, 1
add edx, 1
mov dword [esp + 0x10], edx
jmp 0x4846c6
lea ebx, [ecx + 1]
xor edi, edi
test ebx, ebx
jbe 0x4846b6
lea ecx, [ecx]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
lea edx, [edi + ecx]
mov ecx, dword [eax + 0xc]
mov al, byte [edx + ecx]
mov byte [esi + ebp], 0x25
add esi, 1
lea edx, [esi + ebp]
movzx eax, al
push edx
push eax
call fcn.0047dd10
add edi, 1
add esp, 8
add esi, 2
cmp edi, ebx
jb 0x484680
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
lea eax, [edx + ecx + 1]
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0x10]
cmp edx, dword [edi + 0x6c]
jb 0x4845f0
mov ebx, dword [esp + 0x1c]
mov byte [esi + ebp], 0
cmp byte [edi + 9], 0
mov dword [edi + 0x6c], esi
je 0x4846fb
test esi, esi
je 0x4846fb
mov eax, dword [edi + 0xc]
test eax, eax
je 0x4846fb
push esi
push 0
push eax
call fcn.00630180
add esp, 0xc
mov eax, dword [edi + 0x64]
test eax, eax
je 0x484713
push eax
call fcn.006092e0
add esp, 4
xor eax, eax
mov dword [edi + 0x64], eax
mov dword [edi + 0x68], eax
mov ecx, dword [edi + 0x6c]
add ecx, ebx
mov dword [edi + 0x64], ebp
mov dword [edi + 0xc], ebp
mov dword [edi + 0x68], ecx
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x10
ret