Function at 0x433de0
Capabilities:
Hash data with md5
Terminate process

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x640bb0
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x268
mov eax, dword [0x6f1114]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebx + 8]
xorps xmm0, xmm0
mov dword [ebp - 0x240], eax
mov eax, dword [0x40003c]
mov eax, dword [eax + 0x400008]
mov dword [ebp - 0x188], eax
lea eax, [ebp - 0x188]
push eax
lea eax, [ebp - 0x1c4]
mov dword [ebp - 0x184], 0
push eax
movups xmmword [ebp - 0x1c4], xmm0
mov dword [ebp - 0x1a4], 0
movups xmmword [ebp - 0x1b4], xmm0
call fcn.004c7f93
push dword [ebp - 0x1c4]
mov eax, dword [ebp - 0x1b4]
xorps xmm0, xmm0
push dword [ebp - 0x1c0]
inc eax
push dword [ebp - 0x1bc]
movups xmmword [ebp - 0x34], xmm0
push dword [ebp - 0x1b8]
movups xmmword [ebp - 0x24], xmm0
push eax
mov eax, dword [ebp - 0x1b0]
add eax, 0x76c
push eax
lea eax, [ebp - 0x34]
push str._4d_02d_02d_02d_02d_02d
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x248], 0
add esp, 0x28
mov dword [ebp - 0x244], 0xf
mov byte [ebp - 0x258], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x433ee0
sub ecx, edx
lea eax, [ebp - 0x34]
push ecx
push eax
lea ecx, [ebp - 0x258]
call fcn.004057d0
call fcn.004c811f
cmp dword [ebp - 0x244], 0x10
lea esi, [ebp - 0x258]
mov edi, eax
lea eax, [ebp - 0x23c]
cmovae esi, dword [ebp - 0x258]
push 0xa
push eax
push esi
mov dword [edi], 0
call fcn.004c8022
add esp, 0xc
cmp esi, dword [ebp - 0x23c]
je 0x4344d4
cmp dword [edi], 0x22
je 0x4344de
mov dword [0x6fe244], edx
mov edx, dword [ebp - 0x244]
mov dword [0x6fe240], eax
cmp edx, 0x10
jb 0x433f86
mov ecx, dword [ebp - 0x258]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x433f7c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4344e8
push edx
push ecx
call fcn.004a14d7
add esp, 8
mov dword [ebp - 0x248], 0
mov dword [ebp - 0x244], 0xf
mov byte [ebp - 0x258], 0
call fcn.00441ee0
cmp dword [0x6f5740], 0
jne 0x433fe8
push 0x20
push 0x6daa8c
push 0x6daadc
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, 2
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004a1496
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x10
push str._VER_2.0
mov ecx, 0x6f5730
call fcn.00404120
cmp dword [0x6f5744], 0x10
lea ecx, [ebp - 0x238]
push dword [0x6f5740]
mov eax, 0x6f5730
mov byte [ebp - 0x1d0], 0
cmovae eax, dword [0x6f5730]
push eax
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x238], 0x67452301
mov dword [ebp - 0x234], 0xefcdab89
mov dword [ebp - 0x230], 0x98badcfe
mov dword [ebp - 0x22c], 0x10325476
call fcn.00403460
lea eax, [ebp - 0x274]
push eax
lea ecx, [ebp - 0x238]
call fcn.00403c30
push eax
mov ecx, 0x6f5718
call fcn.004072f0
mov edx, dword [ebp - 0x260]
cmp edx, 0x10
jb 0x4340b6
mov ecx, dword [ebp - 0x274]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4340ac
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4344ed
push edx
push ecx
call fcn.004a14d7
add esp, 8
cmp dword [0x6f5728], 0
mov dword [ebp - 0x264], 0
mov dword [ebp - 0x260], 0xf
mov byte [ebp - 0x274], 0
jne 0x4340f8
push 0x20
push 0x6daa8c
push 0x6dab0c
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, 3
jmp 0x433fc8
push 4
push str.main
mov ecx, 0x6f5700
call fcn.004057d0
push 0x104
lea eax, [ebp - 0x180]
push 0
push eax
call fcn.004b95f0
add esp, 0xc
lea eax, [ebp - 0x180]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x4341ce
lea eax, [ebp - 0x180]
push eax
call dword [sym.imp.SHLWAPI.dll_PathStripPathA]
lea eax, [ebp - 0x180]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveExtensionA]
push 0x40
lea eax, [ebp - 0x78]
push 0
push eax
call fcn.004b95f0
add esp, 0xc
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0x180]
push str.____._________._______0_9a_zA_Z__s
push eax
call fcn.004347e0
add esp, 0xc
cmp eax, 1
jne 0x4341ce
lea eax, [ebp - 0x78]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
jle 0x4341ce
cmp dword [0x6f5714], 0x10
lea edx, [ebp - 0x78]
mov eax, 0x6f5700
mov dword [0x6f5710], 0
cmovae eax, dword [0x6f5700]
lea esi, [edx + 1]
mov byte [eax], 0
mov al, byte [edx]
inc edx
test al, al
jne 0x4341b6
sub edx, esi
lea eax, [ebp - 0x78]
push edx
push eax
mov ecx, 0x6f5700
call fcn.004057d0
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
push dword [ebp - 0x240]
call fcn.0044c5ea
add esp, 4
call fcn.00434500
call fcn.004346c0
mov ecx, eax
call fcn.0043caf0
mov edi, edx
mov esi, eax
test edi, edi
jg 0x4344b8
jl 0x43420b
test esi, esi
jae 0x4344b8
call fcn.004346c0
push edi
push esi
mov ecx, eax
call fcn.0043d030
call fcn.004346c0
push 0x6fec60
push str.Skin.zip
mov ecx, eax
call fcn.0043d400
mov eax, dword [0x6fec64]
mov ecx, dword [0x6fec60]
sub eax, ecx
jne 0x434259
push 0x20
push 0x6daa8c
push 0x6daa94
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
push 5
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0
push eax
push ecx
call fcn.0044c886
add esp, 0xc
call fcn.004346c0
mov ecx, eax
call fcn.0043d930
test eax, eax
jne 0x43427d
push 6
call dword [sym.imp.KERNEL32.dll_ExitProcess]
xor eax, eax
lea edx, [ebp - 0x240]
lea ecx, [ebp - 0x1a0]
mov dword [ebp - 0x240], eax
call fcn.0041ab00
sub esp, 0x18
lea eax, [ebp - 0x1a0]
mov ecx, esp
push eax
call fcn.00404260
xor ecx, ecx
call fcn.0040f350
add esp, 0x18
test eax, eax
jne 0x4342f9
mov edx, dword [ebp - 0x18c]
cmp edx, 0x10
jb 0x4342ef
mov ecx, dword [ebp - 0x1a0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4342e5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4344f2
push edx
push ecx
call fcn.004a14d7
add esp, 8
mov eax, 4
jmp 0x433fc8
call fcn.00417d40
mov edx, eax
cmp word [edx + 0x288], 0
movsx ecx, word [edx + 0x284]
mov dword [edx + 0x248], ecx
jne 0x434337
cmp word [edx + 0x286], 0
jne 0x43432d
mov dword [edx + 0x248], 0x3e7
jmp 0x43434b
mov dword [edx + 0x248], 2
cmp word [edx + 0x286], 0
jne 0x43434b
mov dword [edx + 0x248], 1
movsx eax, word [edx + 0x290]
mov dword [edx + 0x258], eax
mov eax, dword [edx + 0x294]
mov dword [edx + 0x25c], eax
call fcn.00417d40
mov ecx, eax
call fcn.00436310
call fcn.00417b10
push 0
push SysReAllocString
push SysReAllocString
push SysReAllocString
push SysReAllocString
push 0x100
push 0x10cf0000
mov esi, eax
push str.GameHole2.0
push 0
mov ecx, esi
call fcn.004455ae
mov ecx, esi
call fcn.00445b0a
mov ecx, dword [0x6fe22c]
test ecx, ecx
je 0x4343c7
mov eax, dword [ecx]
push 1
call dword [eax + 0x14]
mov dword [0x6fe22c], 0
mov edx, dword [ebp - 0x18c]
cmp edx, 0x10
jb 0x434401
mov ecx, dword [ebp - 0x1a0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4343f7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4344f7
push edx
push ecx
call fcn.004a14d7
add esp, 8
mov dword [ebp - 0x190], 0
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
call dword [sym.imp.ole32.dll_CoUninitialize]
call fcn.00434500
mov edi, eax
lea esi, [edi + 8]
push esi
call fcn.0049f6a6
add esp, 4
test eax, eax
je 0x434442
push eax
call fcn.0049f2e4
add esp, 4
mov byte [edi + 4], 1
lea eax, [edi + 0x38]
mov dword [ebp - 4], 0
push eax
call fcn.0049f1bf
add esp, 4
test eax, eax
je 0x434466
push eax
call fcn.0049f2e4
add esp, 4
push esi
mov dword [ebp - 4], 1
call fcn.0049f6cb
add esp, 4
test eax, eax
je 0x434483
push eax
call fcn.0049f2e4
add esp, 4
mov dword [ebp - 4], 0xffffffff
call fcn.00434500
mov ecx, dword [eax + 0x74]
call fcn.00407ba0
mov ecx, dword [0x6fecb8]
test ecx, ecx
je 0x4344b1
mov eax, dword [ecx]
push 1
call dword [eax]
mov dword [0x6fecb8], 0
xor eax, eax
jmp 0x433fc8
push 0x20
push 0x6daa8c
push 0x6daa94
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 7
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push str.invalid_stoull_argument
call fcn.0049e484
push str.stoull_argument_out_of_range
call fcn.0049e4c4
call fcn.004bd1a9
call fcn.004bd1a9
call fcn.004bd1a9
call fcn.004bd1a9
int3