Function at 0x472b04
Capabilities:
Parse credit card information
Resolve function by parsing pe exports
Set file attributes

Disassembly:
push ebp
lea ebp, [esp - 0x9c]
sub esp, 0x11c
mov eax, dword [0x4ba700]
xor eax, ebp
mov dword [ebp + 0x98], eax
push ebx
mov ebx, dword [ebp + 0xa4]
push esi
push edi
xor edi, edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x80], edi
cmp dword [ebx + 0x1c], edi
je 0x472b44
cmp dword [ebp + 0xa8], edi
jne 0x472b44
xor eax, eax
jmp 0x472b47
xor eax, eax
inc eax
mov dword [ebx + 0x7c], eax
lea eax, [ebx + 0x109f0]
mov dword [ebx + 0x10b80], edi
mov dword [ebx + 0x10b84], edi
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x472b5f
sub eax, esi
mov dword [ebx + 0x10b88], eax
cmp dword [ebp + 0xa8], edi
je 0x472c02
lea eax, [ebx + 0x109f0]
jmp 0x472b91
cmp byte [eax], 0x5c
jne 0x472b8a
mov byte [eax], 0x2f
push eax
call fcn.00488254
pop ecx
cmp byte [eax], 0
jne 0x472b82
lea edi, [ebx + 0x109f0]
mov al, byte [edi]
mov dword [ebp - 0x78], edi
cmp al, 0x2f
jne 0x472bbc
inc edi
mov dword [ebx + 0x10b84], 1
mov byte [ebp - 0x6c], al
mov byte [ebp - 0x6b], 0
mov dword [ebp - 0x78], edi
jmp 0x472c02
movzx eax, al
push eax
call fcn.00480056
pop ecx
test eax, eax
je 0x472c02
cmp byte [ebx + 0x109f1], 0x3a
jne 0x472c02
mov dword [ebx + 0x10b84], 1
mov al, byte [edi]
inc edi
mov byte [ebp - 0x6c], al
mov al, byte [edi]
inc edi
cmp byte [edi], 0x2f
mov byte [ebp - 0x6b], al
lea eax, [ebp - 0x6a]
mov dword [ebp - 0x78], edi
jne 0x472bff
inc edi
mov byte [ebp - 0x6a], 0x2f
lea eax, [ebp - 0x69]
mov dword [ebp - 0x78], edi
mov byte [eax], 0
push 1
lea eax, [ebp - 0x6c]
push eax
push ebx
call fcn.004723cb
add esp, 0xc
mov dword [ebp - 0x74], eax
test eax, eax
jne 0x473077
cmp dword [ebp + 0xa8], 0
mov byte [ebp - 0x6c], al
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x70], eax
jne 0x472c56
cmp dword [ebx + 0x24], 0
je 0x472c46
lea eax, [ebx + 0x109f0]
push 0x2f
push eax
call fcn.0047e5be
pop ecx
pop ecx
mov edi, eax
test edi, edi
jne 0x472c52
lea edi, [ebx + 0x109f0]
jmp 0x472c53
inc edi
mov dword [ebp - 0x78], edi
movzx esi, byte [edi]
test esi, esi
je 0x472e06
cmp esi, 0x3b
ja 0x472d42
je 0x472d36
mov eax, esi
sub eax, 0x20
je 0x472d17
dec eax
dec eax
je 0x472d91
sub eax, 8
je 0x472d91
sub eax, 5
je 0x472c99
sub eax, 0xb
jmp 0x472d59
mov eax, dword [ebp - 0x70]
lea esi, [ebp - 0x6c]
mov edi, ebx
mov byte [eax], 0
call fcn.00471b64
push 2
mov edi, 0x4abc78
pop ecx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x472cbc
mov byte [ebp - 0x6c], al
jmp 0x472d05
cmp dword [ebx + 0x64], 0
jne 0x472cdd
push 3
mov edi, 0x4abc7c
lea esi, [ebp - 0x6c]
pop ecx
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
jne 0x472cdd
mov byte [ebp - 0x6c], al
mov dword [ebp - 0x80], 1
cmp byte [ebp - 0x6c], 0
je 0x472d05
push 2
lea eax, [ebp - 0x6c]
push eax
push ebx
call fcn.004723cb
mov dword [ebp - 0x74], eax
and eax, 0x7f00
add esp, 0xc
cmp eax, 0x100
jg 0x473074
and dword [ebp - 0x7c], 0
mov edi, dword [ebp - 0x78]
lea eax, [ebp - 0x6c]
mov dword [ebp - 0x70], eax
jmp 0x472d9a
cmp dword [ebx + 0x3c], 0
jne 0x472d91
lea ecx, [ebx + 0x109f0]
mov eax, ebx
call fcn.004717f7
test eax, eax
jne 0x472d91
mov eax, dword [ebp - 0x70]
mov byte [eax], 0x20
jmp 0x472d97
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x7c], eax
mov byte [eax], 0x3b
inc eax
jmp 0x472d8c
cmp esi, 0x3c
je 0x472d91
cmp esi, 0x3d
jbe 0x472d5b
cmp esi, 0x3f
jbe 0x472d91
cmp esi, 0x5c
je 0x472d91
cmp esi, 0x7c
je 0x472d91
push esi
call fcn.004802df
pop ecx
test eax, eax
jne 0x472d6b
cmp esi, 0x7f
jb 0x472d9a
call fcn.00482c09
push eax
push edi
call fcn.00482840
push eax
push edi
push dword [ebp - 0x70]
call fcn.00485490
push dword [ebp - 0x70]
call fcn.00488254
add esp, 0x18
mov dword [ebp - 0x70], eax
jmp 0x472d9a
mov eax, dword [ebp - 0x70]
mov byte [eax], 0x5f
inc dword [ebp - 0x70]
push edi
call fcn.00488254
mov edi, eax
movzx esi, byte [edi]
pop ecx
mov dword [ebp - 0x78], edi
test esi, esi
jne 0x472c61
xor eax, eax
cmp dword [ebp - 0x80], eax
je 0x472e06
cmp dword [ebx + 0x38], eax
jne 0x472e06
push eax
lea eax, [ebx + 0x88dc]
push eax
lea eax, [ebx + 0x109f0]
push eax
lea esi, [ebx + 0x8dc]
call fcn.00474630
push eax
push str.warning:__skipped__..___path_component_s__in__s_n
push esi
call fcn.0047c59e
add esp, 0x14
push eax
push esi
push ebx
call dword [ebx + 0x10b54]
test dword [ebp - 0x74], 0xffff80ff
jne 0x472e06
mov eax, dword [ebp - 0x74]
and eax, 0x7f00
or eax, 1
mov dword [ebp - 0x74], eax
push dword [ebx + 0x10b88]
lea esi, [ebx + 0x109f0]
push esi
call fcn.004709a5
cmp byte [eax], 0x2f
pop ecx
pop ecx
jne 0x472f3c
push 4
push esi
push ebx
call fcn.004723cb
xor eax, eax
add esp, 0xc
cmp dword [ebx + 0x10b80], eax
je 0x472ed2
cmp dword [ebx + 0x38], eax
jne 0x472e6e
push eax
lea eax, [ebx + 0x88dc]
push eax
push esi
lea edi, [ebx + 0x8dc]
call fcn.00474630
push eax
push str.___creating:___22s_n
push edi
call fcn.0047c59e
add esp, 0x14
push eax
push edi
push ebx
call dword [ebx + 0x10b54]
mov eax, dword [ebx + 0x8d8]
mov eax, dword [eax + 0x14]
test al, 0x6f
je 0x472ec0
and eax, 0x7f
push eax
push esi
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x472ec0
push 1
lea eax, [ebx + 0x88dc]
push eax
push esi
lea edi, [ebx + 0x8dc]
call fcn.00474630
pop ecx
pop ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str._nwarning___d_:_could_not_set_file_attributes_for__s_n
push edi
call fcn.0047c59e
add esp, 0x10
push eax
push edi
push ebx
call dword [ebx + 0x10b54]
mov eax, dword [ebp - 0x74]
and eax, 0xffff90ff
or eax, 0x1000
jmp 0x473077
cmp dword [ebx + 0x78], 1
jne 0x472f2a
mov eax, dword [ebx + 0x8d8]
mov eax, dword [eax + 0x14]
test al, 0x6f
je 0x472f2a
and eax, 0x7f
push eax
push esi
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x472f2a
push 1
lea eax, [ebx + 0x88dc]
push eax
push esi
lea edi, [ebx + 0x8dc]
call fcn.00474630
pop ecx
pop ecx
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str._nwarning___d_:_could_not_set_file_attributes_for__s_n
push edi
call fcn.0047c59e
add esp, 0x10
push eax
push edi
push ebx
call dword [ebx + 0x10b54]
mov eax, dword [ebp - 0x74]
and eax, 0xffff82ff
or eax, 0x200
jmp 0x473077
mov eax, dword [ebp - 0x70]
mov byte [eax], 0
cmp dword [ebx + 0x54], 0
jne 0x472f6b
mov edi, dword [ebp - 0x7c]
test edi, edi
je 0x472f6b
lea esi, [edi + 1]
jmp 0x472f55
inc esi
movzx eax, byte [esi]
push eax
call fcn.00480156
pop ecx
test eax, eax
jne 0x472f54
cmp byte [esi], 0
jne 0x472f6b
mov byte [edi], 0
lea esi, [ebp - 0x6c]
mov edi, ebx
call fcn.00471b64
cmp byte [ebp - 0x6c], 0
jne 0x472fc0
push 1
lea eax, [ebx + 0x88dc]
push eax
lea eax, [ebx + 0x109f0]
push eax
lea esi, [ebx + 0x8dc]
call fcn.00474630
push eax
push str.mapname:__conversion_of__s_failed_n
push esi
call fcn.0047c59e
add esp, 0x14
push eax
push esi
push ebx
call dword [ebx + 0x10b54]
mov eax, dword [ebp - 0x74]
and eax, 0xffff83ff
or eax, 0x300
jmp 0x473077
push 3
lea eax, [ebp - 0x6c]
push eax
push ebx
call fcn.004723cb
push 4
lea eax, [ebx + 0x109f0]
push eax
push ebx
call fcn.004723cb
mov eax, dword [ebx + 0x8d8]
add esp, 0x18
test byte [eax + 0x18], 0x20
je 0x473074
mov al, byte [ebx + 0x10b8c]
add al, 0x60
cmp dword [ebx + 0x38], 0
mov byte [ebp - 0x7c], al
mov esi, 0x49eb04
lea edi, [ebp - 0x7b]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jne 0x473041
push 0
lea eax, [ebx + 0x88dc]
push eax
lea eax, [ebx + 0x109f0]
push eax
lea esi, [ebx + 0x8dc]
call fcn.00474630
push eax
lea eax, [ebp - 0x7c]
push eax
push str.labelling__s___22s_n
push esi
call fcn.0047c59e
add esp, 0x18
push eax
push esi
push ebx
call dword [ebx + 0x10b54]
lea eax, [ebx + 0x109f0]
push eax
lea eax, [ebp - 0x7c]
push eax
call dword [sym.imp.KERNEL32.dll_SetVolumeLabelA]
test eax, eax
jne 0x472f2a
push 1
lea esi, [ebx + 0x8dc]
push str.mapname:__error_setting_volume_label_n
push esi
call fcn.0047c59e
pop ecx
pop ecx
jmp 0x472fa5
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp + 0x98]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0047c3ff
add ebp, 0x9c
leave
ret