Function at 0x100050f0
Capabilities:
Allocate or change rwx memory
Execute shellcode via indirect call
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x688
mov eax, dword [0x1000c00c]
xor eax, ebp
mov dword [ebp - 4], eax
mov al, byte [ebp + 8]
push ebx
push esi
push edi
cmp al, 0x62
je 0x10005687
cmp al, 0x42
je 0x10005687
cmp al, 0x74
je 0x1000561d
cmp al, 0x54
je 0x1000561d
cmp al, 0x6f
je 0x1000555f
cmp al, 0x4f
je 0x1000555f
cmp al, 0x66
je 0x10005145
cmp al, 0x46
jne 0x10005283
mov eax, dword ds:[0x13c1aac]
add eax, 0x6ec
mov ecx, 0xbd
lea edi, [ebp - 0x38c]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov edx, dword [ebp - 0xc0]
test dx, dx
je 0x100054f3
mov ecx, dword [0x1000ccb4]
cmp dword [0x1000ccb0], ecx
mov byte [0x1000c6d2], 0
cmovne ecx, dword [0x1000ccb0]
xor esi, esi
mov dword [0x1000ccb4], ecx
movzx ecx, dx
mov dword [ebp - 8], esi
mov eax, ecx
cmp ecx, 0xbd3
ja 0x100052b2
je case.0x10005370.6421
cmp ecx, 0x956
ja 0x10005296
je case.0x10005370.6421
cmp ecx, 0x242
ja 0x100051e2
je case.0x10005370.6421
sub eax, 0x19c
cmp eax, 0x48
ja case.default.0x10005370
movzx eax, byte [eax + 0x10005720]
jmp dword [eax*4 + 0x10005718]
cmp ecx, 0x6cb
ja 0x10005208
je case.0x10005370.6421
sub eax, 0x309
cmp eax, 8
ja case.default.0x10005370
movzx eax, byte [eax + 0x10005770]
jmp dword [eax*4 + 0x1000576c]
cmp ecx, 0x6ee
je case.0x10005370.6421
test ecx, ecx
je 0x1000537c
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x49099a
mov dword [ebp - 0x394], str.Este_Item_nao_pode_ser_agrupado
mov dword [ebp - 8], 0x40
call esi
mov dword [0x49099b], 0xffff0000
mov eax, dword [0x684bb0]
mov dword [ebp - 0x390], eax
push dword [ebp - 0x394]
mov ecx, dword [ebp - 0x390]
call dword [0x1000c024]
lea eax, [ebp - 8]
mov dword [0x49099b], 0xffffaaaa
push eax
push dword [ebp - 8]
push 4
push 0x49099a
call esi
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100069a3
mov esp, ebp
pop ebp
ret
sub eax, 0x957
cmp eax, 0x39
ja case.default.0x10005370
movzx eax, byte [eax + 0x10005784]
jmp dword [eax*4 + 0x1000577c]
cmp ecx, 0xcee
ja 0x100052de
je case.0x10005370.6421
sub eax, 0xbd4
cmp eax, 0xca
ja case.default.0x10005370
movzx eax, byte [eax + 0x100057c8]
jmp dword [eax*4 + 0x100057c0]
cmp ecx, 0xfaa
ja 0x10005308
je case.0x10005370.6421
sub eax, 0xcf2
cmp eax, 0x51
ja case.default.0x10005370
movzx eax, byte [eax + 0x1000589c]
jmp dword [eax*4 + 0x10005894]
cmp ecx, 0x1327
ja 0x10005330
je case.0x10005370.6421
sub eax, 0xfab
cmp eax, 0x87
ja case.default.0x10005370
movzx eax, byte [eax + 0x100058f8]
jmp dword [eax*4 + 0x100058f0]
cmp ecx, 0x1914
ja 0x10005362
je case.0x10005370.6421
cmp ecx, 0x17d6
ja 0x10005357
je case.0x10005370.6421
cmp ecx, 0x1328
je case.0x10005370.6421
cmp ecx, 0x17d5
jmp 0x1000520e
cmp ecx, 0x17d9
jmp 0x1000520e
sub eax, 0x1915
cmp eax, 3
ja case.default.0x10005370
jmp dword [eax*4 + 0x10005980]
mov esi, ecx
mov dword [ebp - 8], esi
xor ebx, ebx
nop
movzx eax, word [ebp + ebx*8 - 0x2b0]
cmp eax, esi
jne 0x10005497
mov eax, dword ds:[0x13c1aac]
add eax, 0x6ec
mov ecx, 0xbd
lea edi, [ebp - 0x688]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
xor ecx, ecx
nop dword [eax]
cmp word [ebp + ecx*8 - 0x5ac], dx
je 0x100053cb
inc ecx
or dl, 0xff
cmp ecx, 0x3f
jge 0x100053f1
mov edx, dword [ebp - 0xc0]
jmp 0x100053b0
lea eax, [ebp - 0x5a9]
xor edx, edx
lea eax, [eax + ecx*8]
cmp byte [eax - 1], 0x3d
jne 0x100053ef
cmp byte [eax], 0x78
jne 0x100053ef
inc edx
add eax, 2
cmp edx, 3
jl 0x100053d6
or dl, 0xff
jmp 0x100053f1
mov dl, cl
xorps xmm0, xmm0
mov dword [ebp - 0xc], 0
mov eax, 0x14
movups xmmword [ebp - 0x1c], xmm0
mov word [ebp - 0x1c], ax
mov eax, 0x376
mov word [ebp - 0x18], ax
mov ecx, dword ds:[0x13c1aac]
add ecx, 0xdfc
xor eax, eax
mov ax, word ds:[ecx]
mov word [ebp - 0x16], ax
xor esi, esi
mov byte [ebp - 0x10], 1
mov byte [ebp - 0xf], dl
mov byte [ebp - 0xe], 1
mov byte [ebp - 0xd], bl
mov byte [0x1000c6d2], 1
nop
mov eax, dword [esi + 0x1000894c]
test eax, eax
je 0x10005476
mov ecx, dword [0x1000ccb4]
mov dword [ebp - 0x390], eax
cmp ecx, dword [0x1000ccb8]
je 0x10005469
mov dword [ecx], eax
add dword [0x1000ccb4], 4
jmp 0x10005476
lea eax, [ebp - 0x390]
push eax
push ecx
call fcn.10003930
add esi, 4
cmp esi, 0x50
jb 0x10005440
lea eax, [ebp - 0x1c]
push 0x14
push eax
mov eax, 0x569b76
call eax
mov edx, dword [ebp - 0xc0]
add esp, 8
mov esi, dword [ebp - 8]
inc ebx
cmp ebx, 0x3f
jl 0x10005380
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x49099a
mov dword [ebp - 0x390], str.Item_agrupado_com_sucesso.
mov dword [ebp - 8], 0x40
call esi
mov dword [0x49099b], 0xffffff00
mov eax, dword [0x684bb0]
mov dword [ebp - 0x394], eax
push dword [ebp - 0x390]
mov ecx, dword [ebp - 0x394]
call dword [0x1000c024]
jmp 0x10005269
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
lea eax, [ebp - 8]
push eax
push 0x40
push 4
push 0x49099a
mov dword [ebp - 0x390], str.Coloque_o_item_no_ultimo_slot.
mov dword [ebp - 8], 0x40
call esi
mov dword [0x49099b], 0xffffff00
mov eax, dword [0x684bb0]
mov dword [ebp - 0x394], eax
push dword [ebp - 0x390]
mov ecx, dword [ebp - 0x394]
call dword [0x1000c024]
lea eax, [ebp - 8]
mov dword [0x49099b], 0xffffaaaa
push eax
push dword [ebp - 8]
push 4
push 0x49099a
call esi
jmp 0x10005700
cmp dword [0x1000cc6c], 0
lea eax, [ebp - 8]
mov esi, dword [sym.imp.KERNEL32.dll_VirtualProtect]
push eax
push 0x40
push 4
mov dword [ebp - 8], 0x40
push 0x49099a
je 0x100055c1
mov dword [0x1000cc6c], 0
mov dword [ebp - 0x390], str.Camera_Zoom_Desativada
call esi
mov dword [0x49099b], 0xffff0000
mov eax, dword [0x684bb0]
mov dword [ebp - 0x394], eax
push dword [ebp - 0x390]
mov ecx, dword [ebp - 0x394]
call dword [0x1000c024]
jmp 0x100055fe
mov dword [0x1000cc6c], 1
mov dword [ebp - 0x390], str.Camera_Zoom_Ativada
call esi
mov dword [0x49099b], 0xffffff00
mov eax, dword [0x684bb0]
mov dword [ebp - 0x394], eax
push dword [ebp - 0x390]
mov ecx, dword [ebp - 0x394]
call dword [0x1000c024]
lea eax, [ebp - 8]
mov dword [0x49099b], 0xffffaaaa
push eax
push dword [ebp - 8]
push 4
push 0x49099a
call esi
jmp 0x10005700
mov ecx, dword ds:[0x13c1aac]
add ecx, 0xdfc
xor eax, eax
mov ax, word ds:[ecx]
mov eax, dword ds:[0x13c1aac]
add eax, 0x6ec
mov eax, 0x7c
mov word [ebp - 0x98], ax
mov eax, 0x334
mov word [ebp - 0x94], ax
mov ecx, dword ds:[0x13c1aac]
add ecx, 0xdfc
xor eax, eax
mov ax, word ds:[ecx]
mov word [ebp - 0x92], ax
mov eax, dword [str._carg]
mov dword [ebp - 0x8c], eax
mov ax, word [0x10008fbc]
mov word [ebp - 0x88], ax
jmp 0x100056ed
mov ecx, dword ds:[0x13c1aac]
add ecx, 0xdfc
xor eax, eax
mov ax, word ds:[ecx]
mov eax, dword ds:[0x13c1aac]
add eax, 0x6ec
mov eax, 0x7c
mov word [ebp - 0x98], ax
mov eax, 0x334
mov word [ebp - 0x94], ax
mov ecx, dword ds:[0x13c1aac]
add ecx, 0xdfc
xor eax, eax
mov ax, word ds:[ecx]
mov word [ebp - 0x92], ax
mov eax, dword [str._bag]
mov dword [ebp - 0x8c], eax
mov al, byte [0x10008fb4]
mov byte [ebp - 0x88], al
lea eax, [ebp - 0x98]
push 0x7c
push eax
mov eax, 0x569b76
call eax
add esp, 8
mov ecx, dword [ebp - 4]
mov eax, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100069a3
mov esp, ebp
pop ebp
ret