Function at 0x411220
Capabilities:
Parse credit card information

Disassembly:
sub esp, 0x34
lea eax, [esp + 0x10]
lea ecx, [esp + 0xc]
lea edx, [esp + 0x38]
push ebx
push ebp
push eax
push ecx
lea eax, [esp + 0x18]
push edx
lea ecx, [esp + 0x28]
push eax
lea edx, [esp + 0x30]
push ecx
lea eax, [esp + 0x1c]
push edx
lea ecx, [esp + 0x3c]
push eax
lea edx, [esp + 0x28]
push ecx
mov ecx, dword [esp + 0x60]
lea eax, [esp + 0x48]
push edx
push eax
push str._s__x__d__d_t_d__d__x__x__f__f
push ecx
call fcn.00413d5a
mov edx, dword [esp + 0x40]
xor ebx, ebx
push edx
push ebx
call fcn.00411f90
mov ebp, eax
mov eax, dword [esp + 0x48]
add esp, 0x38
cmp eax, 0x10000
jb 0x4112a2
lea eax, [esp + 0x28]
push eax
push str.iec104
push str.__s_zfyk.xml:_
call sub.dblib.dll_PutInfo
add esp, 0xc
xor al, al
pop ebp
pop ebx
add esp, 0x34
ret
mov eax, dword [esp + 0xc]
push esi
cmp eax, 0x2d
push edi
je 0x411617
cmp eax, 0x3a
je 0x411617
cmp eax, 0xff
je 0x411617
cmp eax, 0x4a
je 0x411617
cmp eax, 0x2e
je 0x411515
cmp eax, 0x3b
je 0x411515
cmp eax, 0x2f
je 0x411413
cmp eax, 0x3c
je 0x411413
cmp eax, 0x30
je 0x411314
cmp eax, 0x3d
je 0x411314
cmp eax, 0x31
je 0x411314
cmp eax, 0x3e
je 0x411314
cmp eax, 0x32
je 0x411314
cmp eax, 0x3f
jne 0x41170b
mov ecx, dword [0x42248c]
mov eax, dword [ecx + ebp*4]
mov ecx, dword [0x4223f0]
lea edx, [eax + eax*4]
lea eax, [eax + edx*2]
mov edx, dword [ecx + ebp*4]
mov word [edx + eax*4 + 0x18], bp
lea eax, [esp + 0x30]
push eax
call sub.dblib.dll_GetIndexByName
mov ecx, dword [0x42248c]
lea esi, [esp + 0x34]
add esp, 4
mov ecx, dword [ecx + ebp*4]
lea edx, [ecx + ecx*4]
lea ecx, [ecx + edx*2]
mov edx, dword [0x4223f0]
mov edx, dword [edx + ebp*4]
mov dword [edx + ecx*4 + 0x14], eax
mov eax, dword [0x42248c]
mov eax, dword [eax + ebp*4]
lea ecx, [eax + eax*4]
lea edx, [eax + ecx*2]
mov eax, dword [0x4223f0]
mov ecx, dword [eax + ebp*4]
mov ax, word [esp + 0x48]
mov word [ecx + edx*4 + 0x1a], ax
mov ecx, dword [0x42248c]
mov eax, dword [ecx + ebp*4]
mov ecx, dword [0x4223f0]
lea edx, [eax + eax*4]
lea eax, [eax + edx*2]
mov edx, dword [ecx + ebp*4]
mov cl, byte [esp + 0x10]
mov byte [edx + eax*4 + 0x1c], cl
mov edx, dword [0x42248c]
mov eax, dword [edx + ebp*4]
lea ecx, [eax + eax*4]
lea edx, [eax + ecx*2]
mov eax, dword [0x4223f0]
mov ecx, dword [eax + ebp*4]
lea edi, [ecx + edx*4]
mov ecx, 5
rep movsd dword es:[edi], dword [esi]
fld dword [esp + 0x1c]
mov edx, dword [0x42248c]
pop edi
pop esi
mov eax, dword [edx + ebp*4]
lea ecx, [eax + eax*4]
lea edx, [eax + ecx*2]
mov eax, dword [0x4223f0]
mov ecx, dword [eax + ebp*4]
fstp dword [ecx + edx*4 + 0x24]
mov edx, dword [0x42248c]
fld dword [esp + 0x18]
mov eax, dword [edx + ebp*4]
lea ecx, [eax + eax*4]
lea edx, [eax + ecx*2]
mov eax, dword [0x4223f0]
mov ecx, dword [eax + ebp*4]
fstp dword [ecx + edx*4 + 0x28]
mov eax, dword [0x42248c]
mov ecx, dword [eax + ebp*4]
inc ecx
mov dword [eax + ebp*4], ecx
pop ebp
mov al, 1
pop ebx
add esp, 0x34
ret
mov edx, dword [0x422458]
mov ecx, dword [0x4223d8]
mov eax, dword [edx + ebp*4]
mov edx, dword [ecx + ebp*4]
lea eax, [eax + eax*8]
mov word [edx + eax*4 + 0x18], bp
lea eax, [esp + 0x30]
push eax
call sub.dblib.dll_GetIndexByName
mov ecx, dword [0x422458]
lea esi, [esp + 0x34]
add esp, 4
mov ecx, dword [ecx + ebp*4]
lea edx, [ecx + ecx*8]
mov ecx, dword [0x4223d8]
mov ecx, dword [ecx + ebp*4]
mov dword [ecx + edx*4 + 0x14], eax
mov edx, dword [0x422458]
mov ecx, dword [0x4223d8]
mov eax, dword [edx + ebp*4]
mov edx, dword [ecx + ebp*4]
mov cx, word [esp + 0x48]
lea eax, [eax + eax*8]
mov word [edx + eax*4 + 0x1a], cx
mov edx, dword [0x422458]
mov ecx, dword [0x4223d8]
mov eax, dword [edx + ebp*4]
mov edx, dword [ecx + ebp*4]
mov cl, byte [esp + 0x10]
lea eax, [eax + eax*8]
mov byte [edx + eax*4 + 0x1e], cl
mov edx, dword [0x422458]
mov ecx, dword [0x4223d8]
mov eax, dword [edx + ebp*4]
mov edx, dword [ecx + ebp*4]
lea eax, [eax + eax*8]
mov word [edx + eax*4 + 0x1c], bx
mov eax, dword [0x422458]
mov edx, dword [0x4223d8]
mov eax, dword [eax + ebp*4]
lea ecx, [eax + eax*8]
mov eax, dword [edx + ebp*4]
mov byte [eax + ecx*4 + 0x1f], bl
mov ecx, dword [0x422458]
mov eax, dword [ecx + ebp*4]
lea edx, [eax + eax*8]
mov eax, dword [0x4223d8]
mov ecx, dword [eax + ebp*4]
mov al, byte [esp + 0x14]
mov byte [ecx + edx*4 + 0x21], al
mov ecx, dword [0x422458]
mov eax, dword [ecx + ebp*4]
lea edx, [eax + eax*8]
mov eax, dword [0x4223d8]
mov ecx, dword [eax + ebp*4]
lea edi, [ecx + edx*4]
mov ecx, 5
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x422458]
pop edi
pop esi
mov ecx, dword [eax + ebp*4]
inc ecx
mov dword [eax + ebp*4], ecx
pop ebp
mov al, 1
pop ebx
add esp, 0x34
ret
mov edx, dword [0x422448]
mov ecx, dword [0x4223d0]
mov eax, dword [edx + ebp*4]
mov edx, dword [ecx + ebp*4]
lea eax, [eax + eax*8]
mov word [edx + eax*4 + 0x1c], bp
lea eax, [esp + 0x30]
push eax
call sub.dblib.dll_GetIndexByName
mov ecx, dword [0x422448]
lea esi, [esp + 0x34]
add esp, 4
mov ecx, dword [ecx + ebp*4]
lea edx, [ecx + ecx*8]
mov ecx, dword [0x4223d0]
mov ecx, dword [ecx + ebp*4]
mov dword [ecx + edx*4 + 0x18], eax
mov edx, dword [0x422448]
mov ecx, dword [0x4223d0]
mov eax, dword [edx + ebp*4]
mov edx, dword [ecx + ebp*4]
mov cx, word [esp + 0x48]
lea eax, [eax + eax*8]
mov word [edx + eax*4 + 0x1e], cx
mov edx, dword [0x422448]
mov ecx, dword [0x4223d0]
mov eax, dword [edx + ebp*4]
mov edx, dword [ecx + ebp*4]
mov cl, byte [esp + 0x10]
lea eax, [eax + eax*8]
mov byte [edx + eax*4 + 0x22], cl
mov edx, dword [0x422448]
mov ecx, dword [0x4223d0]
mov eax, dword [edx + ebp*4]
mov edx, dword [ecx + ebp*4]
lea eax, [eax + eax*8]
mov byte [edx + eax*4 + 0x14], bl
mov eax, dword [0x422448]
mov edx, dword [0x4223d0]
mov eax, dword [eax + ebp*4]
lea ecx, [eax + eax*8]
mov eax, dword [edx + ebp*4]
mov dl, byte [esp + 0x14]
mov byte [eax + ecx*4 + 0x23], dl
mov eax, dword [0x422448]
mov edx, dword [0x4223d0]
mov eax, dword [eax + ebp*4]
lea ecx, [eax + eax*8]
mov eax, dword [edx + ebp*4]
mov word [eax + ecx*4 + 0x20], bx
mov ecx, dword [0x422448]
mov eax, dword [ecx + ebp*4]
lea edx, [eax + eax*8]
mov eax, dword [0x4223d0]
mov ecx, dword [eax + ebp*4]
lea edi, [ecx + edx*4]
mov ecx, 5
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x422448]
pop edi
pop esi
mov ecx, dword [eax + ebp*4]
inc ecx
mov dword [eax + ebp*4], ecx
pop ebp
mov al, 1
pop ebx
add esp, 0x34
ret
mov edx, dword [0x422438]
mov ecx, dword [0x4223c8]
mov eax, dword [edx + ebp*4]
mov edx, dword [ecx + ebp*4]
lea eax, [eax + eax*4]
mov word [edx + eax*8 + 0x16], bp
lea eax, [esp + 0x30]
push eax
call sub.dblib.dll_GetIndexByName
mov ecx, dword [0x422438]
lea esi, [esp + 0x34]
add esp, 4
mov ecx, dword [ecx + ebp*4]
lea edx, [ecx + ecx*4]
mov ecx, dword [0x4223c8]
mov ecx, dword [ecx + ebp*4]
mov dword [ecx + edx*8 + 0x18], eax
mov edx, dword [0x422438]
mov ecx, dword [0x4223c8]
mov eax, dword [edx + ebp*4]
mov edx, dword [ecx + ebp*4]
mov cx, word [esp + 0x48]
lea eax, [eax + eax*4]
mov word [edx + eax*8 + 0x1c], cx
mov edx, dword [0x422438]
mov ecx, dword [0x4223c8]
mov eax, dword [edx + ebp*4]
mov edx, dword [ecx + ebp*4]
mov cl, byte [esp + 0x10]
lea eax, [eax + eax*4]
mov byte [edx + eax*8 + 0x20], cl
mov edx, dword [0x422438]
mov ecx, dword [0x4223c8]
mov eax, dword [edx + ebp*4]
mov edx, dword [ecx + ebp*4]
lea eax, [eax + eax*4]
mov byte [edx + eax*8 + 0x14], bl
mov eax, dword [0x422438]
mov edx, dword [0x4223c8]
mov eax, dword [eax + ebp*4]
lea ecx, [eax + eax*4]
mov eax, dword [edx + ebp*4]
mov word [eax + ecx*8 + 0x1e], bx
mov ecx, dword [0x422438]
mov eax, dword [ecx + ebp*4]
lea edx, [eax + eax*4]
mov eax, dword [0x4223c8]
mov ecx, dword [eax + ebp*4]
mov eax, dword [esp + 0x14]
mov dword [ecx + edx*8 + 0x24], eax
mov ecx, dword [0x422438]
mov eax, dword [ecx + ebp*4]
lea edx, [eax + eax*4]
mov eax, dword [0x4223c8]
mov ecx, dword [eax + ebp*4]
lea edi, [ecx + edx*8]
mov ecx, 5
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x422438]
inc dword [eax + ebp*4]
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x34
ret