Function at 0x1000e4dd
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push edi
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0xc]
xor ebx, ebx
cmp eax, ebx
mov dword [ebp - 4], eax
mov dword [ebp - 8], 1
je 0x1000ec6d
push esi
mov esi, dword [ebp + 0xc]
cmp esi, ebx
jne 0x1000e519
push ebx
push ebx
push 0x7b
push eax
call fcn.100272ec
add esp, 0x10
jmp 0x1000ec6c
movzx eax, byte [esi]
cmp eax, 0x58
mov dword [ebp - 0x10], eax
jg 0x1000e8a8
je 0x1000e883
cmp eax, 0x40
jg 0x1000e74b
je 0x1000e690
cmp eax, 0x10
je 0x1000e855
cmp eax, 0x11
je 0x1000e941
cmp eax, 0x1f
je 0x1000e662
cmp eax, 0x30
je 0x1000e5fb
cmp eax, 0x3b
jle 0x1000ec5d
cmp eax, 0x3d
jle 0x1000e77f
cmp eax, 0x3f
jne 0x1000ec5d
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0x10]
mov esi, dword [ecx + 0xc]
mov ecx, dword [esi]
push eax
push edi
mov dword [ebp - 0x18], eax
mov dword [ebp + 8], ecx
call fcn.1000e4dd
push ebx
push ebx
push 0x5f
push dword [ebp - 4]
call fcn.100272ec
push dword [ebp + 8]
push edi
call fcn.1000e4dd
push ebx
push 0x48
push dword [ebp + 8]
xor eax, eax
push dword [ebp - 0x18]
mov ebx, edi
call fcn.1000c7fe
push 0
push 1
push 0x68
push dword [ebp - 4]
call fcn.100272ec
mov esi, dword [esi + 0xc]
add esp, 0x40
push esi
push edi
call fcn.1000e4dd
push 0
push 0x46
push esi
push dword [ebp - 0x18]
xor eax, eax
call fcn.1000c7fe
push 0
push 0
push 0x3d
push dword [ebp - 4]
call fcn.100272ec
add esp, 0x28
jmp 0x1000e7d6
cmp dword [edi + 0xac], ebx
jne 0x1000e615
push str.RAISE___may_only_be_used_within_a_trigger_program
push edi
call fcn.10021e0b
pop ecx
pop ecx
jmp 0x1000ec6c
cmp dword [esi + 0x28], 4
je 0x1000e63d
push esi
push dword [edi]
call fcn.1000d197
mov eax, dword [esi + 0x18]
shr eax, 1
push eax
push dword [esi + 0x14]
push dword [esi + 0x28]
push 0x13
push 0x25
push dword [ebp - 4]
call fcn.10028b16
jmp 0x1000e65d
push ebx
push ebx
push 0x6e
push dword [ebp - 4]
call fcn.100272ec
mov eax, dword [edi + 0xac]
push dword [eax + 0x10]
push ebx
push 0x60
push dword [ebp - 4]
call fcn.100272ec
add esp, 0x20
jmp 0x1000e688
push dword [esi + 8]
push edi
call fcn.1000e4dd
add esi, 0x14
push esi
call fcn.10008e19
movsx eax, al
push ebx
add eax, 0x29
push ebx
push eax
push dword [ebp - 4]
call fcn.100272ec
add esp, 0x1c
mov dword [ebp - 8], ebx
jmp 0x1000ec5d
mov eax, dword [edi + 0x28]
push esi
push edi
mov dword [ebp - 0x18], eax
call fcn.1000e283
mov eax, esi
call fcn.1000c749
push ebx
push 1
push 0x30
push dword [ebp - 4]
mov byte [ebp + 0xb], al
call fcn.100272ec
mov eax, dword [ebp - 0x18]
mov ecx, eax
inc eax
neg ecx
sbb ecx, ecx
and ecx, eax
mov dword [edi + 0x28], ecx
push dword [esi + 8]
push edi
call fcn.1000e4dd
push dword [ebp - 4]
call fcn.100274c9
mov dword [ebp - 0x18], eax
add eax, 4
push eax
push 0xffffffffffffffff
push 0x42
push dword [ebp - 4]
call fcn.100272ec
push ebx
push 2
push 0xb
push dword [ebp - 4]
call fcn.100272ec
add esp, 0x44
push ebx
push ebx
push 0x7b
push dword [ebp - 4]
call fcn.100272ec
mov eax, dword [ebp - 0x18]
add eax, 7
push eax
push ebx
push 0x60
push dword [ebp - 4]
mov dword [ebp - 0x18], eax
call fcn.100272ec
push 1
lea eax, [ebp + 0xb]
push eax
push ebx
push 1
push 0x5c
push dword [ebp - 4]
call fcn.10028b16
push dword [ebp - 0x18]
push dword [esi + 0x24]
push 0x87
push dword [ebp - 4]
call fcn.100272ec
add esp, 0x48
push ebx
push 0xffffffffffffffff
push 0x28
jmp 0x1000eaca
cmp eax, 0x55
jg 0x1000e849
je 0x1000e820
cmp eax, 0x41
jl 0x1000ec5d
cmp eax, 0x42
jle 0x1000e7dd
cmp eax, 0x48
jle 0x1000e7aa
cmp eax, 0x49
jle 0x1000ec5d
cmp eax, 0x53
jg 0x1000ec5d
push dword [esi + 8]
push edi
call fcn.1000e4dd
push dword [esi + 0xc]
push edi
call fcn.1000e4dd
push ebx
push ebx
push dword [ebp - 0x10]
push dword [ebp - 4]
call fcn.100272ec
add esp, 0x20
or dword [ebp - 8], 0xffffffff
jmp 0x1000ec5d
push dword [esi + 8]
push edi
call fcn.1000e4dd
push dword [esi + 0xc]
push edi
call fcn.1000e4dd
push ebx
push dword [ebp - 0x10]
xor eax, eax
push dword [esi + 0xc]
mov ebx, edi
push dword [esi + 8]
call fcn.1000c7fe
add esp, 0x20
or dword [ebp - 8], 0xffffffff
xor ebx, ebx
jmp 0x1000ec5d
push ebx
push 1
push 0x30
push dword [ebp - 4]
call fcn.100272ec
push dword [esi + 8]
push edi
call fcn.1000e4dd
push dword [ebp - 4]
call fcn.100274c9
inc eax
inc eax
push eax
push 1
push dword [ebp - 0x10]
push dword [ebp - 4]
call fcn.100272ec
push ebx
push 0xffffffffffffffff
push 0x28
push dword [ebp - 4]
call fcn.100272ec
add esp, 0x3c
jmp 0x1000e688
mov eax, dword [esi + 8]
mov cl, byte [eax]
cmp cl, 0x7d
je 0x1000e834
cmp cl, 0x7c
jne 0x1000e855
cmp cl, 0x7d
jne 0x1000e83e
push 1
push dword [eax + 0x14]
jmp 0x1000e91b
mov esi, dword [eax + 0x14]
xor edi, edi
inc edi
jmp 0x1000e930
sub eax, 0x56
je 0x1000e873
dec eax
jne 0x1000ec5d
push dword [esi + 8]
push edi
call fcn.1000e4dd
push ebx
push ebx
push dword [ebp - 0x10]
push dword [ebp - 4]
call fcn.100272ec
add esp, 0x18
jmp 0x1000e688
push dword [esi + 8]
push edi
call fcn.1000e4dd
pop ecx
pop ecx
jmp 0x1000e688
push esi
push dword [edi]
call fcn.1000d197
mov eax, dword [esi + 0x18]
shr eax, 1
push eax
push dword [esi + 0x14]
push ebx
push ebx
push 0x58
push dword [ebp - 4]
call fcn.10028b16
add esp, 0x20
jmp 0x1000ec5d
mov ecx, 0x81
cmp eax, ecx
jg 0x1000ea81
je 0x1000e961
sub eax, 0x5c
je 0x1000e958
sub eax, 0x12
je 0x1000e941
sub eax, 0xe
je 0x1000e92b
dec eax
je 0x1000e917
dec eax
dec eax
je 0x1000e90e
dec eax
jne 0x1000ec5d
push ebx
push dword [esi + 0x24]
push 0x19
push dword [ebp - 4]
call fcn.100272ec
mov eax, dword [esi + 0x18]
shr eax, 1
add esp, 0x10
cmp eax, 1
jbe 0x1000ec5d
push eax
push dword [esi + 0x14]
push 0xffffffffffffffff
push dword [ebp - 4]
call fcn.1002860a
jmp 0x1000ead2
push ebx
push dword [esi + 0x24]
jmp 0x1000eac8
push ebx
push dword [esi + 0x14]
push dword [ebp - 4]
call fcn.1000ce3b
add esp, 0xc
jmp 0x1000ec5d
mov esi, dword [esi + 0x14]
xor edi, edi
push dword [ebp - 4]
call fcn.1000ce84
mov edi, dword [ebp + 8]
pop ecx
jmp 0x1000ec5d
cmp dword [esi + 0x28], ebx
jne 0x1000e94f
push esi
push edi
call fcn.1000e283
pop ecx
pop ecx
push ebx
push dword [esi + 0x28]
jmp 0x1000eac8
push ebx
push ebx
push 0x7b
jmp 0x1000eaca
mov eax, dword [esi + 0x10]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax]
push dword [ebp - 4]
mov dword [ebp + 8], ecx
mov dword [ebp - 0x18], eax
call fcn.10027344
mov dword [ebp - 0x10], eax
mov eax, dword [esi + 8]
cmp eax, ebx
pop ecx
je 0x1000e98b
push eax
push edi
call fcn.1000e4dd
pop ecx
pop ecx
cmp dword [ebp - 0x18], ebx
jle 0x1000ea39
mov eax, dword [ebp + 8]
mov dword [ebp + 8], eax
mov eax, dword [ebp - 0x18]
dec eax
shr eax, 1
inc eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 8]
push dword [eax]
push edi
call fcn.1000e4dd
cmp dword [esi + 8], ebx
pop ecx
pop ecx
je 0x1000e9f1
push 1
push 1
push 0x5f
push dword [ebp - 4]
call fcn.100272ec
mov eax, dword [ebp + 8]
push ebx
push 0x43
push dword [eax]
xor eax, eax
push dword [esi + 8]
inc eax
mov ebx, edi
call fcn.1000c7fe
push 0
push 1
push 0xb
push dword [ebp - 4]
mov dword [ebp - 0x18], eax
call fcn.100272ec
add esp, 0x30
xor ebx, ebx
jmp 0x1000ea04
push ebx
push 1
push 0x5a
push dword [ebp - 4]
call fcn.100272ec
add esp, 0x10
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 8]
push dword [eax + 0xc]
push edi
call fcn.1000e4dd
push dword [ebp - 0x10]
push ebx
push 0x60
push dword [ebp - 4]
call fcn.100272ec
push dword [ebp - 0x18]
push dword [ebp - 4]
call fcn.100275b4
add dword [ebp + 8], 0x18
add esp, 0x20
dec dword [ebp - 0x14]
jne 0x1000e9a4
cmp dword [esi + 8], ebx
je 0x1000ea4e
push ebx
push 1
push 0xb
push dword [ebp - 4]
call fcn.100272ec
add esp, 0x10
mov esi, dword [esi + 0xc]
cmp esi, ebx
je 0x1000ea60
push esi
push edi
call fcn.1000e4dd
pop ecx
pop ecx
jmp 0x1000ea6f
push ebx
push ebx
push 0x7b
push dword [ebp - 4]
call fcn.100272ec
add esp, 0x10
push dword [ebp - 0x10]
push dword [ebp - 4]
call fcn.10027387
pop ecx
pop ecx
jmp 0x1000ec5d
sub eax, 0x94
je 0x1000ea9c
dec eax
je 0x1000eb14
dec eax
je 0x1000eae9
dec eax
je 0x1000eab4
dec eax
jne 0x1000ec5d
mov eax, dword [esi + 0x10]
cmp eax, ebx
mov dword [ebp - 0xc], eax
je 0x1000eb3a
mov eax, dword [eax]
mov dword [ebp + 8], eax
jmp 0x1000eb3d
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x2c]
imul eax, eax, 0x18
add eax, dword [ecx + 0x10]
cmp byte [ecx], bl
jne 0x1000eada
push ebx
push dword [eax + 0x10]
push 1
push dword [ebp - 4]
call fcn.100272ec
add esp, 0x10
jmp 0x1000ec5d
cmp byte [ecx + 1], bl
je 0x1000eb14
push dword [eax + 0xc]
push dword [ecx + 4]
push 3
jmp 0x1000eaca
mov eax, dword [esi + 0x2c]
cmp eax, ebx
jne 0x1000eb04
add esi, 0x1c
push esi
push str.misuse_of_aggregate:__T
push edi
call fcn.10021e0b
jmp 0x1000e923
mov ecx, dword [esi + 0x30]
mov eax, dword [eax + 0x20]
push ebx
shl ecx, 4
push dword [ecx + eax + 8]
jmp 0x1000eac8
mov eax, dword [esi + 0x24]
cmp eax, ebx
jge 0x1000eb29
mov eax, dword [edi + 0x28]
sub eax, dword [esi + 0x28]
push 1
dec eax
push eax
push 0x5f
jmp 0x1000eaca
push eax
push dword [esi + 0x28]
push dword [esi + 0x3c]
push dword [ebp - 4]
call fcn.1000cf1e
jmp 0x1000ead2
mov dword [ebp + 8], ebx
mov ecx, dword [edi]
mov eax, dword [ecx + 8]
mov eax, dword [eax + 0x14]
mov al, byte [eax + 0x59]
mov edx, dword [esi + 0x14]
push ebx
mov byte [ebp - 8], al
push dword [ebp - 8]
mov eax, dword [esi + 0x18]
push dword [ebp + 8]
shr eax, 1
push eax
push edx
push ecx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x10], ebx
call fcn.1000b8bb
push dword [ebp - 0xc]
mov dword [ebp - 8], eax
push edi
call fcn.1000cfa5
add esp, 0x20
cmp eax, 2
mov dword [ebp + 8], eax
jl 0x1000eb93
test byte [esi + 2], 0x80
je 0x1000eb93
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0xc]
push dword [eax + 0xc]
jmp 0x1000eba0
cmp dword [ebp + 8], ebx
jle 0x1000ebb4
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0xc]
push dword [eax]
push dword [ebp + 8]
push dword [ebp - 8]
push dword [ebp - 0x14]
call fcn.1002a7a2
mov dword [ebp - 8], eax
add esp, 0x10
cmp dword [ebp + 8], ebx
mov dword [ebp - 0x14], ebx
jle 0x1000ec13
xor esi, esi
cmp esi, 0x180
jge 0x1000ec13
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0xc]
push dword [eax + esi]
call fcn.1000d505
test eax, eax
pop ecx
je 0x1000ebe4
mov ecx, dword [ebp - 0x14]
xor eax, eax
inc eax
shl eax, cl
or dword [ebp - 0x18], eax
mov eax, dword [ebp - 8]
cmp byte [eax + 3], bl
je 0x1000ec05
cmp dword [ebp - 0x10], ebx
jne 0x1000ec05
mov eax, dword [ebp - 0xc]
mov eax, dword [eax + 0xc]
push dword [eax + esi]
push edi
call fcn.1000c6dc
pop ecx
pop ecx
mov dword [ebp - 0x10], eax
inc dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
add esi, 0xc
cmp eax, dword [ebp + 8]
jl 0x1000ebbe
mov eax, dword [ebp - 8]
cmp byte [eax + 3], bl
je 0x1000ec3c
cmp dword [ebp - 0x10], ebx
jne 0x1000ec28
mov eax, dword [edi]
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x10], eax
push 0xfffffffffffffffc
push dword [ebp - 0x10]
push ebx
push ebx
push 0xd
push dword [ebp - 4]
call fcn.10028b16
add esp, 0x18
push 0xfffffffffffffffb
push dword [ebp - 8]
push dword [ebp + 8]
push dword [ebp - 0x18]
push 0x14
push dword [ebp - 4]
call fcn.10028b16
xor eax, eax
inc eax
add esp, 0x18
sub eax, dword [ebp + 8]
mov dword [ebp - 8], eax
mov eax, dword [edi + 0x28]
cmp eax, ebx
je 0x1000ec6c
mov ecx, dword [ebp - 8]
add eax, ecx
mov dword [edi + 0x28], eax
pop esi
pop edi
pop ebx
leave
ret