Function at 0x7743b0
Capabilities:
Parse credit card information

Disassembly:
push ebx
push ebp
push esi
push edi
mov esi, ecx
xor edi, edi
push 0x2c
pop ecx
push 0x7d
mov eax, dword [esi + 0x44]
mov edx, edi
mov dword [esi + 0xe8], edi
pop ebx
cmp eax, dword [esi + 0x48]
jae 0x77419c
movzx ecx, word [eax]
add eax, 2
push 0x2c
mov dword [esi + 0x44], eax
mov ebp, ecx
pop eax
mov dword [esi + 0x4c], ebp
mov ebx, ecx
cmp cx, ax
je 0x774196
push 0x7d
pop eax
cmp bx, ax
je 0x774196
mov edx, ebp
mov ecx, esi
call fcn.00773fc8
imul edx, dword [esi + 0xe8], 0xa
movzx ecx, al
add edx, ecx
mov dword [esi + 0xe8], edx
cmp edx, 0xffff
jge 0x774202
mov eax, dword [esi + 0x44]
cmp eax, dword [esi + 0x48]
jb 0x77414b
push 0x2c
pop ecx
push 0x7d
pop ebx
cmp dword [esi + 0x4c], ecx
je 0x7741a9
mov dword [esi + 0xec], edx
jmp 0x7741f8
mov dword [esi + 0xec], edi
jmp 0x7741e2
movzx edx, word [eax]
add eax, 2
mov dword [esi + 0x4c], edx
mov dword [esi + 0x44], eax
cmp edx, ebx
je 0x7741ea
mov ecx, esi
call fcn.00773fc8
imul edi, dword [esi + 0xec], 0xa
movzx ecx, al
add edi, ecx
mov dword [esi + 0xec], edi
cmp edi, 0xffff
jge 0x774202
mov eax, dword [esi + 0x44]
cmp eax, dword [esi + 0x48]
jb 0x7741b1
test edi, edi
jne 0x7741f8
mov dword [esi + 0xec], 0xffff
pop edi
pop esi
pop ebp
mov eax, 0x102
pop ebx
ret
mov ecx, esi
call fcn.00774124
int3
push ecx
push ebx
push ebp
push esi
push edi
mov esi, ecx
mov dword [esp + 0x10], 0x108
xor ebp, ebp
xor bl, bl
xor bh, bh
call fcn.00774076
push dword [esi + 0x48]
lea edi, [esi + 0x4c]
lea edx, [esi + 0x44]
mov ecx, edi
call fcn.00774019
pop ecx
mov cl, al
test cl, cl
jne 0x774265
cmp dword [edi], 0x5e
jne 0x774258
mov dword [esp + 0x10], 0x109
push dword [esi + 0x48]
lea edx, [esi + 0x44]
mov ecx, edi
call fcn.00774019
pop ecx
mov cl, al
test cl, cl
jne 0x774265
cmp dword [edi], 0x5d
je 0x77437d
mov eax, dword [edi]
test eax, eax
je 0x7743a7
test cl, cl
je 0x774348
push eax
push str.DdSsWwAa
call fcn.007e4b80
pop ecx
pop ecx
test eax, eax
je 0x77431f
test bl, bl
je 0x7742ac
push ebp
mov edx, ebp
mov ecx, esi
call fcn.0077409b
pop ecx
test bh, bh
je 0x7742ac
push 0x2d
push 0x2d
pop edx
mov ecx, esi
call fcn.0077409b
pop ecx
cmp dword [edi], 0x61
ja 0x7742ea
je 0x7742e3
cmp dword [edi], 0x41
je 0x7742dc
cmp dword [edi], 0x44
je 0x7742d5
cmp dword [edi], 0x53
je 0x7742ce
cmp dword [edi], 0x57
jne 0x774316
mov edx, 0x80000005
jmp 0x77430c
mov edx, 0x80000003
jmp 0x77430c
mov edx, 0x80000001
jmp 0x77430c
mov edx, 0x80000007
jmp 0x77430c
mov edx, 0x80000006
jmp 0x77430c
cmp dword [edi], 0x64
je 0x774307
cmp dword [edi], 0x73
je 0x774300
cmp dword [edi], 0x77
jne 0x774316
mov edx, 0x80000004
jmp 0x77430c
mov edx, 0x80000002
jmp 0x77430c
mov edx, 0x80000000
push 0
mov ecx, esi
call fcn.0077409b
pop ecx
xor bh, bh
xor bl, bl
jmp 0x774248
mov eax, dword [edi]
cmp eax, 0x30
je 0x774341
cmp eax, 0x62
jne 0x774332
push 8
pop edx
mov dword [edi], edx
mov eax, edx
test bl, bl
je 0x774374
mov edx, ebp
mov ecx, esi
test bh, bh
je 0x774366
push eax
jmp 0x774310
and dword [edi], 0
xor eax, eax
jmp 0x774332
cmp eax, 0x2d
jne 0x774332
test bl, bl
je 0x774361
test bh, bh
je 0x77435a
push eax
mov edx, ebp
jmp 0x77430e
mov bh, 1
jmp 0x774248
push 0x2d
pop ebp
jmp 0x774376
push ebp
call fcn.0077409b
mov ebp, dword [edi]
pop ecx
jmp 0x774248
mov ebp, eax
mov bl, 1
jmp 0x774248
test bl, bl
je 0x77439d
push ebp
mov edx, ebp
mov ecx, esi
call fcn.0077409b
pop ecx
test bh, bh
je 0x77439d
push 0x2d
push 0x2d
pop edx
mov ecx, esi
call fcn.0077409b
pop ecx
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
pop ecx
ret
push 0xb
push esi
call fcn.007e4fe3
int3
push ebx
push esi
mov esi, ecx
push edi
push dword [esi + 0x48]
lea ebx, [esi + 0x44]
lea edi, [esi + 0x4c]
mov edx, ebx
mov ecx, edi
call fcn.00774019
pop ecx
mov ecx, dword [edi]
test al, al
je 0x7744cc
cmp ecx, 0x62
ja 0x77442e
je 0x774424
mov eax, ecx
sub eax, 0x30
je 0x77441d
sub eax, 0x12
je 0x774413
dec eax
sub eax, 1
je 0x774409
sub eax, 0xf
je 0x7743ff
sub eax, 4
jne 0x774445
mov edi, 0x109
jmp 0x77448c
mov edi, 0x109
jmp 0x77449f
mov edi, 0x109
jmp 0x7744b2
mov eax, 0x10b
jmp 0x774506
mov eax, 0x103
jmp 0x774482
mov eax, 0x10a
jmp 0x774506
cmp ecx, 0x64
je 0x7744ad
cmp ecx, 0x73
je 0x77449a
cmp ecx, 0x77
je 0x774487
cmp ecx, 0x7fffffff
je 0x77447d
add ecx, 0xffffffd0
cmp ecx, 9
ja 0x774501
mov edx, dword [ebx]
mov dword [edi], ecx
movzx eax, word [edx]
mov esi, eax
cmp esi, 0x30
jb 0x774473
cmp eax, 0x39
ja 0x774473
imul eax, ecx, 0xa
add eax, 0xffffffd0
add eax, esi
mov dword [edi], eax
lea eax, [edx + 2]
mov dword [ebx], eax
mov eax, 0x107
jmp 0x774506
mov eax, 0x101
and dword [edi], 0
jmp 0x774506
mov edi, 0x108
mov ecx, esi
call fcn.00774076
mov edx, 0x80000004
jmp 0x7744be
mov edi, 0x108
mov ecx, esi
call fcn.00774076
mov edx, 0x80000002
jmp 0x7744be
mov edi, 0x108
mov ecx, esi
call fcn.00774076
mov edx, 0x80000000
push 0
mov ecx, esi
call fcn.0077409b
pop ecx
mov eax, edi
jmp 0x774506
cmp byte [esi + 0x40], 0
je 0x774573
push 0x3f
pop eax
cmp ecx, eax
ja 0x774545
je 0x774565
test ecx, ecx
je 0x774577
cmp ecx, 0x24
je 0x774565
cmp ecx, 0x28
je 0x77450a
jbe 0x774501
cmp ecx, 0x2b
jbe 0x774565
cmp ecx, 0x2e
je 0x774565
mov eax, 0x100
pop edi
pop esi
pop ebx
ret
mov ecx, dword [ebx]
cmp word [ecx], ax
jne 0x774540
movzx eax, word [ecx + 2]
mov edx, eax
cmp edx, 0x21
je 0x774534
cmp edx, 0x3a
je 0x77452d
cmp eax, 0x3d
jne 0x774540
mov eax, 0x104
jmp 0x774539
mov eax, 0x105
jmp 0x774539
mov eax, 0x106
add ecx, 4
mov dword [ebx], ecx
jmp 0x774506
push 0x28
pop eax
jmp 0x774506
mov eax, ecx
sub eax, 0x5b
je 0x774569
sub eax, 3
je 0x774565
sub eax, 0x1d
je 0x77455b
sub eax, 1
jmp 0x7744ff
pop edi
mov ecx, esi
pop esi
pop ebx
jmp 0x77412d
mov eax, ecx
jmp 0x774506
pop edi
mov ecx, esi
pop esi
pop ebx
jmp 0x77420a
test ecx, ecx
jne 0x774501
xor eax, eax
jmp 0x774506