Function at 0x4018b0
Capabilities:
Check if file exists
Copy file
Get common file path
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x708
mov ebx, dword [ebp + 0x10]
call dword [sym.imp.comctl32.dll_InitCommonControls]
xor eax, eax
mov word [ebp - 0x6ec], ax
test byte [section..data], 8
jne 0x401bc0
mov dword [esp], ebx
call dword [sym.imp.ucrtbase.dll__wcsdup]
mov edi, eax
test eax, eax
je 0x40219b
mov dword [esp], 0x44
call dword [sym.imp.ucrtbase.dll_malloc]
movzx edx, byte [section..data]
mov dword [ebp - 0x6f4], eax
mov byte [ebp - 0x6f9], dl
test eax, eax
je 0x402953
movzx ebx, word [edi]
test bx, bx
je 0x40238a
mov dword [ebp - 0x6f8], 0x10
xor esi, esi
mov dword [ebp - 0x6f0], 0
lea esi, [esi]
nop
movzx eax, bx
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_iswspace]
test eax, eax
je 0x401a60
cmp dword [ebp - 0x6f0], 1
je 0x401a48
mov ebx, edi
lea edi, [ebx + 2]
movzx ebx, word [ebx + 2]
test bx, bx
jne 0x401940
mov eax, dword [ebp - 0x6f4]
mov dword [eax + esi*4], 0
test byte [ebp - 0x6f9], 8
jne 0x401ca0
mov eax, dword [ebp - 0x6f4]
test eax, eax
je 0x40219b
test esi, esi
jle 0x401a39
mov dword [ebp - 0x6f0], 0
xor eax, eax
xor ebx, ebx
mov edi, esi
mov word [ebp - 0x6f8], ax
mov eax, dword [ebp - 0x6f4]
lea esi, [ebx*4]
mov ecx, dword [eax + ebx*4]
movzx eax, word [ecx]
and eax, 0xfffffffd
cmp ax, 0x2d
je 0x401b30
mov eax, dword [ebp - 0x6f0]
test eax, eax
je 0x402230
mov esi, edi
cmp word [ebp - 0x6f8], 0x43
je 0x401d17
cmp word [ebp - 0x6f8], 0
je 0x401e11
cmp word [ebp - 0x6f8], 0x45
je 0x402131
lea ebx, [ebp - 0x6ec]
mov dword [esp], ebx
call dword [sym.imp.shlwapi.dll_PathAddBackslashW]
movzx eax, word [ebp - 0x6f8]
sub esp, 4
cmp ax, 0x42
jbe 0x401a39
cmp ax, 0x44
je 0x401e2b
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret 0x10
mov dword [ebp - 0x6f0], 0
xor eax, eax
mov ebx, edi
mov word [edi], ax
jmp 0x401963
cmp bx, 0x22
je 0x401aa0
mov eax, dword [ebp - 0x6f0]
mov ebx, edi
test eax, eax
jne 0x401963
mov dword [ebp - 0x6f0], 1
mov eax, dword [ebp - 0x6f8]
sub eax, 1
cmp eax, esi
jle 0x401ae1
mov eax, dword [ebp - 0x6f4]
mov dword [eax + esi*4], ebx
add esi, 1
jmp 0x401963
mov eax, dword [ebp - 0x6f0]
cmp eax, 1
je 0x401b98
cmp eax, 2
je 0x401a48
test eax, eax
jne 0x401961
cmp word [edi + 2], 0
je 0x40196f
mov eax, dword [ebp - 0x6f8]
lea ebx, [edi + 2]
mov dword [ebp - 0x6f0], 2
sub eax, 1
cmp eax, esi
jg 0x401a8d
shl dword [ebp - 0x6f8], 1
mov eax, dword [ebp - 0x6f8]
lea eax, [eax*4 + 4]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x6f4]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_realloc]
mov dword [ebp - 0x6f4], eax
test eax, eax
jne 0x401a8d
mov dword [esp], ebx
call dword [sym.imp.ucrtbase.dll_free]
movzx eax, byte [section..data]
mov byte [ebp - 0x6f9], al
jmp 0x401ce1
movzx eax, word [ecx + 2]
mov dword [esp], eax
call dword [sym.imp.ucrtbase.dll_towupper]
cmp ax, 0x4c
je 0x4021e3
ja 0x401ba8
cmp ax, 0x41
je 0x4021ad
lea ecx, [eax - 0x43]
cmp cx, 2
ja 0x401a39
cmp word [ebp - 0x6f8], 0
jne 0x401a39
mov word [ebp - 0x6f8], ax
add ebx, 1
cmp ebx, edi
jl 0x4019b6
mov eax, dword [ebp - 0x6f0]
mov esi, edi
test eax, eax
je 0x401a39
jmp 0x4019e6
xor eax, eax
mov word [edi], ax
jmp 0x401abc
cmp ax, 0x59
jne 0x401a39
mov dword [0x407004], 1
jmp 0x401b75
test ebx, ebx
je 0x402356
mov eax, ebx
shr eax, 0x10
je 0x401f57
mov dword [esp + 4], 0xffffffff
mov dword [esp], ebx
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov ecx, eax
sub esp, 8
mov eax, str._invalid_
test ecx, ecx
jne 0x401f67
cmp word [ebx], 0
je 0x40272d
mov edx, ecx
lea ecx, [ecx + 1]
cmp word [ebx + edx*2 + 2], 0
jne 0x401c00
mov eax, 0x224c
mov dword [ebp + 0x10], ebx
mov esi, ebx
mov word [ebp - 0x2dc], ax
lea eax, [ebp - 0x2da]
jmp 0x401c67
cmp cx, 9
je 0x40217c
cmp cx, 0xa
jne 0x4022c7
mov edi, 0x6e5c
add eax, 2
mov word [eax - 2], di
sub edx, 1
jb 0x4023ae
lea ecx, [ebp - 0x1ba]
cmp ecx, eax
jb 0x402322
movzx ecx, word [esi]
add esi, 2
cmp cx, 0xd
je 0x402156
jbe 0x401c30
cmp cx, 0x22
je 0x402169
cmp cx, 0x5c
jne 0x4022b4
mov ecx, 0x5c5c
add eax, 2
mov word [eax - 2], cx
jmp 0x401c50
mov dword [esp], section..data
call sym.___wine_dbg_get_channel_flags
test al, 8
je 0x401989
test esi, esi
jle 0x40218d
xor edi, edi
movzx eax, byte [section..data]
test al, 8
jne 0x401f94
mov edx, dword [ebp - 0x6f4]
mov byte [ebp - 0x6f9], al
test edx, edx
jne 0x40199f
test byte [ebp - 0x6f9], 2
je 0x401a39
mov dword [esp + 0xc], str.Command_line_parsing_failed_n
mov dword [esp + 8], str.wWinMain
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0
jmp 0x401a39
lea eax, [ebx + 1]
cmp eax, esi
jne 0x401a39
lea esi, [ebp - 0x6ec]
mov dword [esp + 0xc], 0
mov dword [esp + 8], esi
mov dword [esp + 4], 0x104
mov eax, dword [ebp - 0x6f4]
mov eax, dword [eax + ebx*4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_GetFullPathNameW]
sub esp, 0x10
test eax, eax
je 0x401a39
mov dword [esp], esi
call dword [sym.imp.shlwapi.dll_PathAddBackslashW]
sub esp, 4
mov dword [esp], esi
call dword [sym.imp.shlwapi.dll_PathIsDirectoryW]
sub esp, 4
test eax, eax
jne 0x402414
mov dword [esp], esi
call dword [sym.imp.shlwapi.dll_PathFileExistsW]
sub esp, 4
test eax, eax
je 0x401de1
mov eax, dword [0x407004]
test eax, eax
jne 0x401de1
lea ebx, [ebp - 0x2dc]
mov dword [esp + 0xc], esi
mov dword [esp + 8], str.Overwrite___s__
mov dword [esp + 4], 0x168
mov dword [esp], ebx
call sym._swprintf.constprop.0
mov dword [esp + 0xc], 0x34
mov dword [esp + 8], str.Extract
mov dword [esp + 4], ebx
mov dword [esp], 0
call dword [sym.imp.user32.dll_MessageBoxW]
sub esp, 0x10
cmp eax, 6
jne 0x401a39
test byte [section..data], 8
jne 0x402445
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov eax, dword [ebp - 0x6f0]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_CopyFileW]
sub esp, 0xc
jmp 0x401a39
cmp esi, ebx
jg 0x402131
lea ebx, [ebp - 0x6ec]
mov dword [esp], ebx
call dword [sym.imp.shlwapi.dll_PathAddBackslashW]
sub esp, 4
mov dword [section..bss], 1
mov dword [esp + 0xc], ebx
mov dword [esp + 8], sym._ExtCabCallback_16
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x6f0]
mov dword [esp], eax
call dword [sym.imp.setupapi.dll_SetupIterateCabinetW]
sub esp, 0x10
test eax, eax
jne 0x401a39
test byte [section..data], 2
je 0x401a39
mov eax, dword [ebp - 0x6f0]
shr eax, 0x10
je 0x40274b
mov dword [esp + 4], 0xffffffff
mov esi, dword [ebp - 0x6f0]
mov dword [esp], esi
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov edx, str._invalid_
sub esp, 8
test eax, eax
jne 0x4023e7
cmp word [esi], 0
mov ecx, esi
je 0x402935
mov edx, eax
lea eax, [eax + 1]
cmp word [ecx + edx*2 + 2], 0
jne 0x401eb2
mov ebx, 0x224c
movzx esi, word [str._r_]
movzx edi, word [0x40518c]
lea eax, [ebp - 0x2da]
mov word [ebp - 0x2dc], bx
jmp 0x401f18
cmp cx, 9
je 0x4026ae
cmp cx, 0xa
jne 0x40282a
mov ecx, 0x6e5c
add eax, 2
mov word [eax - 2], cx
sub edx, 1
jb 0x4028cc
lea ecx, [ebp - 0x1ba]
cmp ecx, eax
jb 0x4023b9
add dword [ebp - 0x6f0], 2
mov ecx, dword [ebp - 0x6f0]
movzx ecx, word [ecx - 2]
cmp cx, 0xd
je 0x4026a3
jbe 0x401ee1
cmp cx, 0x22
je 0x402698
cmp cx, 0x5c
jne 0x40279c
mov ecx, 0x5c5c
add eax, 2
mov word [eax - 2], cx
jmp 0x401f01
mov dword [esp + 4], ebx
mov dword [esp], str._04x
call sym._wine_dbg_sprintf.constprop.0
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.cmdline:__s_n
mov dword [esp + 8], 0x405170
mov dword [esp + 4], 0x404000
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0
jmp 0x4018db
mov eax, dword [ebp - 0x6f4]
mov ebx, dword [eax + edi*4]
test ebx, ebx
je 0x402318
mov eax, ebx
shr eax, 0x10
je 0x40223b
mov dword [esp + 4], 0xffffffff
mov dword [esp], ebx
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov ecx, eax
sub esp, 8
mov eax, str._invalid_
test ecx, ecx
jne 0x4020b4
cmp word [ebx], 0
je 0x40267a
lea esi, [esi]
mov edx, ecx
lea ecx, [ecx + 1]
cmp word [ebx + edx*2 + 2], 0
jne 0x401fe0
mov eax, 0x224c
mov dword [ebp - 0x6f8], edi
mov word [ebp - 0x2dc], ax
lea eax, [ebp - 0x2da]
mov dword [ebp - 0x6f0], ebx
jmp 0x402043
cmp cx, 9
je 0x402120
cmp cx, 0xa
jne 0x402263
mov ebx, 0x6e5c
add eax, 2
mov word [eax - 2], bx
sub edx, 1
jb 0x402360
lea ecx, [ebp - 0x1ba]
cmp ecx, eax
jb 0x402082
add dword [ebp - 0x6f0], 2
mov ecx, dword [ebp - 0x6f0]
movzx ecx, word [ecx - 2]
cmp cx, 0xd
je 0x4020f0
jbe 0x402010
cmp cx, 0x22
je 0x402108
cmp cx, 0x5c
jne 0x402250
mov edi, 0x5c5c
add eax, 2
mov word [eax - 2], di
jmp 0x402030
mov byte [eax], 0x22
mov edi, dword [ebp - 0x6f8]
test edx, edx
je 0x402369
mov ebx, 0x2e2e
mov byte [eax + 3], 0x2e
lea edx, [eax + 4]
mov word [eax + 1], bx
lea eax, [ebp - 0x2dc]
mov byte [edx], 0
mov dword [esp], eax
call sym.___wine_dbg_strdup
mov dword [esp + 0x10], edi
add edi, 1
mov dword [esp + 0x14], eax
mov dword [esp + 0xc], str.arg__d:__s_n
mov dword [esp + 8], 0x405170
mov dword [esp + 4], 0x404000
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0
cmp edi, esi
jne 0x401cbe
jmp 0x40199f
movzx ecx, word [str._r_]
add eax, 2
mov word [eax - 2], cx
jmp 0x402030
movzx ecx, word [0x40518c]
add eax, 2
mov word [eax - 2], cx
jmp 0x402030
mov ecx, 0x745c
add eax, 2
mov word [eax - 2], cx
jmp 0x402030
cmp word [ebp - 0x6ec], 0
lea ebx, [ebp - 0x6ec]
je 0x402371
mov dword [esp], ebx
call dword [sym.imp.shlwapi.dll_PathAddBackslashW]
sub esp, 4
jmp 0x401e35
movzx ecx, word [str._r_]
add eax, 2
mov word [eax - 2], cx
jmp 0x401c50
movzx ecx, word [0x40518c]
add eax, 2
mov word [eax - 2], cx
jmp 0x401c50
mov ebx, 0x745c
add eax, 2
mov word [eax - 2], bx
jmp 0x401c50
mov ecx, dword [ebp - 0x6f4]
test ecx, ecx
jne 0x401a39
movzx eax, byte [section..data]
mov byte [ebp - 0x6f9], al
jmp 0x401ce1
test byte [section..data], 1
je 0x401b75
mov dword [esp + 0xc], str._A_not_implemented_n
mov dword [esp + 8], str.wWinMain
mov dword [esp + 4], 0x404000
mov dword [esp], 0
call sym._wine_dbg_log.constprop.0
jmp 0x401b75
add ebx, 1
cmp ebx, edi
jge 0x401a39
lea eax, [ebp - 0x6ec]
mov dword [esp + 0xc], 0
mov dword [esp + 8], eax
mov dword [esp + 4], 0x104
mov eax, dword [ebp - 0x6f4]
mov eax, dword [eax + esi + 4]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_GetFullPathNameW]
sub esp, 0x10
test eax, eax
jne 0x401b75
jmp 0x401a39
mov dword [ebp - 0x6f0], ecx
jmp 0x401b75
mov dword [esp + 4], ebx
mov dword [esp], str._04x
call sym._wine_dbg_sprintf.constprop.0
jmp 0x4020b4
lea edi, [ecx - 0x20]
cmp di, 0x5e
ja 0x402263
mov byte [eax], cl
add eax, 1
jmp 0x402030
mov edi, ecx
mov byte [eax], 0x5c
add eax, 5
shr di, 0xc
movzx edi, di
movzx ebx, byte [edi + str.0123456789abcdefget_extrac_args]
mov edi, ecx
shr di, 8
and edi, 0xf
mov byte [eax - 4], bl
movzx ebx, byte [edi + str.0123456789abcdefget_extrac_args]
mov edi, ecx
and ecx, 0xf
shr di, 4
movzx ecx, byte [ecx + str.0123456789abcdefget_extrac_args]
and edi, 0xf
mov byte [eax - 3], bl
movzx ebx, byte [edi + str.0123456789abcdefget_extrac_args]
mov byte [eax - 1], cl
mov byte [eax - 2], bl
jmp 0x402030
lea edi, [ecx - 0x20]
cmp di, 0x5e
ja 0x4022c7
mov byte [eax], cl
add eax, 1
jmp 0x401c50
mov edi, ecx
mov byte [eax], 0x5c
add eax, 5
shr di, 0xc
movzx edi, di
movzx ebx, byte [edi + str.0123456789abcdefget_extrac_args]
mov edi, ecx
shr di, 8
and edi, 0xf
mov byte [eax - 4], bl
movzx ebx, byte [edi + str.0123456789abcdefget_extrac_args]
mov edi, ecx
and ecx, 0xf
shr di, 4
movzx ecx, byte [ecx + str.0123456789abcdefget_extrac_args]
and edi, 0xf
mov byte [eax - 3], bl
movzx ebx, byte [edi + str.0123456789abcdefget_extrac_args]
mov byte [eax - 1], cl
mov byte [eax - 2], bl
jmp 0x401c50
mov eax, str._null_
jmp 0x4020b4
mov byte [eax], 0x22
mov ebx, dword [ebp + 0x10]
test edx, edx
je 0x4023b4
mov byte [eax + 3], 0x2e
mov edx, 0x2e2e
mov word [eax + 1], dx
lea edx, [eax + 4]
lea eax, [ebp - 0x2dc]
mov byte [edx], 0
mov dword [esp], eax
call sym.___wine_dbg_strdup
jmp 0x401f67
mov eax, str._null_
jmp 0x401f67
mov byte [eax], 0x22
mov edi, dword [ebp - 0x6f8]
lea edx, [eax + 1]
jmp 0x4020a3
mov dword [esp + 4], ebx
mov dword [esp], 0x104
call dword [sym.imp.kernel32.dll_GetCurrentDirectoryW]
sub esp, 8
jmp 0x402145
mov dword [eax], 0
test byte [ebp - 0x6f9], 8
je 0x401a39
mov dword [esp], section..data
call sym.___wine_dbg_get_channel_flags
jmp 0x401a39
mov byte [eax], 0x22
mov ebx, dword [ebp + 0x10]
lea edx, [eax + 1]
jmp 0x402340
mov byte [eax], 0x22
test edx, edx
je 0x4028cf
mov byte [eax + 3], 0x2e
mov edx, 0x2e2e
mov word [eax + 1], dx
lea edx, [eax + 4]
lea eax, [ebp - 0x2dc]
mov byte [edx], 0
mov dword [esp], eax
call sym.___wine_dbg_strdup
mov edx, eax
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], str.Could_not_extract_cab_file__s_n
mov dword [esp + 8], str.extract
mov dword [esp + 4], 0x404000
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0
jmp 0x401a39
mov eax, dword [ebp - 0x6f0]
mov dword [esp], eax
call dword [sym.imp.shlwapi.dll_PathFindFileNameW]
sub esp, 4
mov dword [esp + 4], esi
lea esi, [ebp - 0x4e4]
mov dword [esp + 8], eax
mov dword [esp], esi
call dword [sym.imp.shlwapi.dll_PathCombineW]
sub esp, 0xc
jmp 0x401d79
mov eax, esi
shr eax, 0x10
je 0x402785
mov dword [esp + 4], 0xffffffff
mov ebx, str._invalid_
mov dword [esp], esi
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
sub esp, 8
test eax, eax
jne 0x402533
cmp word [esi], 0
je 0x4028f9
mov edx, eax
lea eax, [eax + 1]
cmp word [esi + edx*2 + 2], 0
jne 0x40247b
mov ebx, 0x224c
mov edi, esi
lea eax, [ebp - 0x2da]
mov word [ebp - 0x2dc], bx
jmp 0x4024d1
cmp cx, 9
je 0x4026bf
cmp cx, 0xa
jne 0x40287b
mov ecx, 0x6e5c
add eax, 2
mov word [eax - 2], cx
sub edx, 1
jb 0x4028d7
lea ecx, [ebp - 0x1ba]
cmp ecx, eax
jb 0x402505
movzx ecx, word [edi]
add edi, 2
cmp cx, 0xd
je 0x4026d0
jbe 0x40249e
cmp cx, 0x22
je 0x402707
cmp cx, 0x5c
jne 0x402804
mov ecx, 0x5c5c
add eax, 2
mov word [eax - 2], cx
jmp 0x4024be
mov byte [eax], 0x22
test edx, edx
je 0x4028da
mov byte [eax + 3], 0x2e
mov edx, 0x2e2e
mov word [eax + 1], dx
lea edx, [eax + 4]
lea eax, [ebp - 0x2dc]
mov byte [edx], 0
mov dword [esp], eax
call sym.___wine_dbg_strdup
mov ebx, eax
mov eax, dword [ebp - 0x6f0]
shr eax, 0x10
je 0x402768
mov dword [esp + 4], 0xffffffff
mov edi, dword [ebp - 0x6f0]
mov dword [esp], edi
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov edx, str._invalid_
sub esp, 8
test eax, eax
jne 0x402649
cmp word [edi], 0
mov ecx, edi
je 0x402917
mov edx, eax
lea eax, [eax + 1]
cmp word [ecx + edx*2 + 2], 0
jne 0x402575
mov edi, 0x224c
mov dword [ebp - 0x6f4], esi
lea eax, [ebp - 0x2da]
mov word [ebp - 0x2dc], di
mov edi, dword [ebp - 0x6f0]
mov dword [ebp - 0x6f8], ebx
jmp 0x4025db
cmp cx, 9
je 0x4026f6
cmp cx, 0xa
jne 0x4027b3
mov esi, 0x6e5c
add eax, 2
mov word [eax - 2], si
sub edx, 1
jb 0x4028e2
lea ecx, [ebp - 0x1ba]
cmp ecx, eax
jb 0x40260f
movzx ecx, word [edi]
add edi, 2
cmp cx, 0xd
je 0x40271a
jbe 0x4025a8
cmp cx, 0x22
je 0x4026e3
cmp cx, 0x5c
jne 0x402817
mov ecx, 0x5c5c
add eax, 2
mov word [eax - 2], cx
jmp 0x4025c8
mov esi, dword [ebp - 0x6f4]
mov ebx, dword [ebp - 0x6f8]
mov byte [eax], 0x22
test edx, edx
je 0x4028f1
mov edi, 0x2e2e
mov byte [eax + 3], 0x2e
lea edx, [eax + 4]
mov word [eax + 1], di
lea eax, [ebp - 0x2dc]
mov byte [edx], 0
mov dword [esp], eax
call sym.___wine_dbg_strdup
mov edx, eax
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], str.copying__s_to__s_n
mov dword [esp + 8], str.copy_file
mov dword [esp + 4], 0x404000
mov dword [esp], 3
call sym._wine_dbg_log.constprop.0
jmp 0x401dee
mov eax, 0x224c
mov byte [ebp - 0x2da], 0x22
lea edx, [ebp - 0x2d9]
mov word [ebp - 0x2dc], ax
jmp 0x4020a3
mov word [eax], di
add eax, 2
jmp 0x401f01
mov word [eax], si
add eax, 2
jmp 0x401f01
mov ebx, 0x745c
add eax, 2
mov word [eax - 2], bx
jmp 0x401f01
mov ebx, 0x745c
add eax, 2
mov word [eax - 2], bx
jmp 0x4024be
movzx ecx, word [str._r_]
add eax, 2
mov word [eax - 2], cx
jmp 0x4024be
movzx ecx, word [0x40518c]
add eax, 2
mov word [eax - 2], cx
jmp 0x4025c8
mov ebx, 0x745c
add eax, 2
mov word [eax - 2], bx
jmp 0x4025c8
movzx ecx, word [0x40518c]
add eax, 2
mov word [eax - 2], cx
jmp 0x4024be
movzx ecx, word [str._r_]
add eax, 2
mov word [eax - 2], cx
jmp 0x4025c8
mov eax, 0x224c
mov byte [ebp - 0x2da], 0x22
lea edx, [ebp - 0x2d9]
mov word [ebp - 0x2dc], ax
jmp 0x402340
mov eax, dword [ebp - 0x6f0]
mov dword [esp], str._04x
mov dword [esp + 4], eax
call sym._wine_dbg_sprintf.constprop.0
mov edx, eax
jmp 0x4023e7
mov eax, dword [ebp - 0x6f0]
mov dword [esp], str._04x
mov dword [esp + 4], eax
call sym._wine_dbg_sprintf.constprop.0
mov edx, eax
jmp 0x402649
mov dword [esp + 4], esi
mov dword [esp], str._04x
call sym._wine_dbg_sprintf.constprop.0
mov ebx, eax
jmp 0x402533
lea ebx, [ecx - 0x20]
cmp bx, 0x5e
ja 0x40282a
mov byte [eax], cl
add eax, 1
jmp 0x401f01
mov esi, ecx
mov byte [eax], 0x5c
add eax, 5
shr si, 0xc
movzx esi, si
movzx ebx, byte [esi + str.0123456789abcdefget_extrac_args]
mov esi, ecx
shr si, 8
and esi, 0xf
mov byte [eax - 4], bl
movzx ebx, byte [esi + str.0123456789abcdefget_extrac_args]
mov esi, ecx
and ecx, 0xf
shr si, 4
movzx ecx, byte [ecx + str.0123456789abcdefget_extrac_args]
and esi, 0xf
mov byte [eax - 3], bl
movzx ebx, byte [esi + str.0123456789abcdefget_extrac_args]
mov byte [eax - 1], cl
mov byte [eax - 2], bl
jmp 0x4025c8
lea ebx, [ecx - 0x20]
cmp bx, 0x5e
ja 0x40287b
mov byte [eax], cl
add eax, 1
jmp 0x4024be
lea esi, [ecx - 0x20]
cmp si, 0x5e
ja 0x4027b3
mov byte [eax], cl
add eax, 1
jmp 0x4025c8
mov ebx, ecx
mov byte [eax], 0x5c
add eax, 5
shr bx, 0xc
movzx ebx, bx
movzx ebx, byte [ebx + str.0123456789abcdefget_extrac_args]
mov byte [eax - 4], bl
mov ebx, ecx
shr bx, 8
and ebx, 0xf
movzx ebx, byte [ebx + str.0123456789abcdefget_extrac_args]
mov byte [eax - 3], bl
mov ebx, ecx
and ecx, 0xf
shr bx, 4
movzx ecx, byte [ecx + str.0123456789abcdefget_extrac_args]
and ebx, 0xf
movzx ebx, byte [ebx + str.0123456789abcdefget_extrac_args]
mov byte [eax - 1], cl
mov byte [eax - 2], bl
jmp 0x401f01
mov ebx, ecx
mov byte [eax], 0x5c
add eax, 5
shr bx, 0xc
movzx ebx, bx
movzx ebx, byte [ebx + str.0123456789abcdefget_extrac_args]
mov byte [eax - 4], bl
mov ebx, ecx
shr bx, 8
and ebx, 0xf
movzx ebx, byte [ebx + str.0123456789abcdefget_extrac_args]
mov byte [eax - 3], bl
mov ebx, ecx
and ecx, 0xf
shr bx, 4
movzx ecx, byte [ecx + str.0123456789abcdefget_extrac_args]
and ebx, 0xf
movzx ebx, byte [ebx + str.0123456789abcdefget_extrac_args]
mov byte [eax - 1], cl
mov byte [eax - 2], bl
jmp 0x4024be
mov byte [eax], 0x22
lea edx, [eax + 1]
jmp 0x4023d4
mov byte [eax], 0x22
lea edx, [eax + 1]
jmp 0x402520
mov esi, dword [ebp - 0x6f4]
mov ebx, dword [ebp - 0x6f8]
mov byte [eax], 0x22
lea edx, [eax + 1]
jmp 0x402636
mov edi, 0x224c
mov byte [ebp - 0x2da], 0x22
lea edx, [ebp - 0x2d9]
mov word [ebp - 0x2dc], di
jmp 0x402520
mov eax, 0x224c
mov byte [ebp - 0x2da], 0x22
lea edx, [ebp - 0x2d9]
mov word [ebp - 0x2dc], ax
jmp 0x402636
mov esi, 0x224c
mov byte [ebp - 0x2da], 0x22
lea edx, [ebp - 0x2d9]
mov word [ebp - 0x2dc], si
jmp 0x4023d4
mov dword [esp], edi
call dword [sym.imp.ucrtbase.dll_free]
jmp 0x40219b