Function at 0x402d4c
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffb4
push ebx
push esi
push edi
mov byte [ebp - 0x41], dl
mov esi, eax
mov eax, 0x4c3b58
call fcn.004b58a4
mov word [ebp - 0x30], 8
mov edx, dword [0x4eda60]
mov eax, dword [edx]
mov dx, word [eax + 0x38]
mov word [ebp - 2], dx
mov dx, 0xfff5
call fcn.00473268
mov ecx, dword [0x4eda5c]
mov eax, dword [ecx]
call fcn.00474e20
inc dword [ebp - 0x24]
xor edx, edx
mov word [ebp - 0x30], 0x14
mov word [ebp - 0x30], 0x20
mov dword [ebp - 8], edx
lea edi, [esi + 0x3cc]
inc dword [ebp - 0x24]
xor ebx, ebx
mov word [ebp - 0x30], 0x14
mov byte [edi], 0
inc ebx
inc edi
cmp ebx, 6
jl 0x402db5
xor ebx, ebx
mov byte [esi + 0x3b8], 0
cmp byte [ebp - 0x41], 0
je 0x402dd2
mov bl, 1
jmp 0x402ddd
call fcn.0043a5ac
test al, al
jne 0x402ddd
mov bl, 1
test bl, bl
je 0x40313f
mov eax, dword [sym.carthief.exe__frmStartNew]
mov eax, dword [eax]
call fcn.00427d28
mov edx, dword [sym.carthief.exe__frmStartNew]
mov eax, esi
mov edx, dword [edx]
call fcn.004033c0
cmp byte [0x4edec4], 0
je 0x402e49
mov eax, esi
call fcn.00471d70
dec dword [ebp - 0x24]
lea eax, [ebp - 8]
mov edx, 2
call fcn.004c1004
dec dword [ebp - 0x24]
mov ecx, dword [0x4eda60]
mov eax, dword [ecx]
mov dx, word [ebp - 2]
call fcn.00473268
mov word [ebp - 0x30], 0x14
mov ecx, dword [ebp - 0x40]
mov dword fs:[0], ecx
jmp 0x40336c
mov eax, dword [sym.carthief.exe__frmStartNew]
mov edx, dword [eax]
cmp byte [edx + 0x3ac], 0
je 0x402e92
dec dword [ebp - 0x24]
lea eax, [ebp - 8]
mov edx, 2
call fcn.004c1004
dec dword [ebp - 0x24]
mov ecx, dword [0x4eda60]
mov eax, dword [ecx]
mov dx, word [ebp - 2]
call fcn.00473268
mov word [ebp - 0x30], 0x14
mov ecx, dword [ebp - 0x40]
mov dword fs:[0], ecx
jmp 0x40336c
mov eax, dword [esi + 0x360]
call fcn.0044e9a0
mov eax, dword [esi + 0x378]
call fcn.0044a878
call fcn.00439aac
mov edx, dword [sym.carthief.exe__frmStartNew]
xor ebx, ebx
mov ecx, dword [edx]
mov eax, dword [ecx + 0x3a8]
mov dword [0x4eded8], eax
mov dword [0x4edee4], 1
mov byte [0x4edee8], 0
jmp 0x402f1f
mov edx, ebx
mov eax, edi
call fcn.0049f894
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
je 0x402f10
mov word [ebp - 0x30], 0x50
dec dword [ebp - 0x24]
mov edx, 2
mov eax, dword [ebp - 0xc]
add eax, 4
call fcn.004c1004
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.004b4994
pop ecx
mov word [ebp - 0x30], 0x44
xor ecx, ecx
mov edx, ebx
mov eax, dword [0x4deef4]
call fcn.0049f9e0
inc ebx
mov edi, dword [0x4deef4]
cmp ebx, dword [edi + 8]
jl 0x402ed5
mov eax, dword [0x4deef4]
mov edx, dword [eax]
call dword [edx + 8]
xor ebx, ebx
jmp 0x402f72
mov edx, ebx
mov eax, edi
call fcn.0049f894
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x402f63
mov word [ebp - 0x30], 0x68
mov edx, 3
mov eax, dword [ebp - 0x10]
call fcn.0043e5e4
mov word [ebp - 0x30], 0x5c
xor ecx, ecx
mov edx, ebx
mov eax, dword [0x4deef8]
call fcn.0049f9e0
inc ebx
mov edi, dword [0x4deef8]
cmp ebx, dword [edi + 8]
jl 0x402f38
mov eax, dword [0x4deef8]
mov edx, dword [eax]
call dword [edx + 8]
mov ecx, dword [sym.carthief.exe__frmStartNew]
mov eax, dword [ecx]
mov ebx, dword [eax + 0x3a4]
xor edx, edx
mov dword [eax + 0x3a4], edx
mov edx, ebx
mov eax, esi
call fcn.00402cd4
mov ecx, dword [ebx + 0x18]
cmp ecx, 6
ja case.0x402fb2.0
jmp dword [ecx*4 + 0x402fb9]
mov edx, 0xf
mov eax, 0xe
call fcn.0043dba4
mov edx, eax
mov eax, ebx
call fcn.0043efd4
jmp case.0x402fb2.0
push 0x1c
mov ecx, 3
mov edx, 2
mov eax, 1
call fcn.0043dc08
mov edx, eax
mov eax, ebx
call fcn.0043efd4
jmp case.0x402fb2.0
mov edx, 8
mov eax, ebx
call fcn.0043efd4
mov edx, 7
mov eax, ebx
call fcn.0043efd4
jmp case.0x402fb2.0
mov edx, 0x21
mov eax, ebx
call fcn.0043efd4
jmp case.0x402fb2.0
mov edx, 0x20
mov eax, ebx
call fcn.0043efd4
mov edx, 0x1a
mov eax, 0x19
call fcn.0043dba4
mov edx, eax
mov eax, ebx
call fcn.0043efd4
mov edx, 0xb
mov eax, ebx
call fcn.0043efd4
jmp case.0x402fb2.0
mov edx, 0x12
mov eax, ebx
call fcn.0043efd4
mov edx, 0x13
mov eax, ebx
call fcn.0043efd4
mov edx, ebx
mov eax, dword [0x4deef8]
call fcn.0049f738
call fcn.004b9c94
cdq
mov ecx, 7
mov edi, 0x4edeec
idiv ecx
inc edx
xor eax, eax
mov dword [ebp - 0x48], eax
mov dword [0x4edee0], edx
mov dword [ebp - 0x4c], 0x4edfa0
xor eax, eax
mov dword [edi], eax
mov ebx, dword [esi + 0x3b4]
test ebx, ebx
je 0x4030ce
call fcn.004b9c94
cdq
idiv ebx
jmp 0x4030d0
xor edx, edx
mov eax, dword [ebp - 0x4c]
inc edx
add edi, 4
mov dword [eax], edx
inc dword [ebp - 0x48]
add dword [ebp - 0x4c], 4
cmp dword [ebp - 0x48], 7
jl 0x4030b6
mov ecx, dword [sym.carthief.exe__frmContacts]
mov eax, dword [ecx]
call fcn.0044bcd8
mov edx, dword [sym.carthief.exe__frmBank]
mov eax, dword [edx]
call fcn.00419484
mov edx, dword [sym.carthief.exe__frmDealer]
mov eax, dword [edx]
call fcn.0042882c
mov edx, dword [sym.carthief.exe__frmEquipment]
mov eax, dword [edx]
call fcn.0041b150
mov edx, dword [sym.carthief.exe__frmTraining]
mov eax, dword [edx]
call fcn.00424500
mov eax, dword [esi + 0x32c]
call fcn.00424f30
mov eax, dword [esi + 0x330]
call fcn.00426070
jmp 0x40314e
mov edx, dword [sym.carthief.exe__frmStartNew]
mov ecx, dword [edx]
mov byte [ecx + 0x3ac], 0
mov eax, esi
call fcn.004061a0
mov eax, dword [esi + 0x32c]
call fcn.00424ff0
xor ecx, ecx
or edx, 0xffffffff
mov eax, dword [esi + 0x32c]
call fcn.00425b54
mov eax, dword [esi + 0x330]
call fcn.0042616c
xor ecx, ecx
or edx, 0xffffffff
mov eax, dword [esi + 0x330]
call fcn.0042661c
mov eax, dword [esi + 0x334]
add eax, 0x230
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x40]
mov ecx, dword [sym.carthief.exe__frmEventsHistory]
mov eax, dword [ecx]
mov eax, dword [eax + 0x2d0]
add eax, 0x230
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x40]
xor ebx, ebx
jmp 0x4031d5
mov edx, ebx
mov eax, edi
call fcn.0049f894
mov ecx, dword [eax + 8]
push ecx
mov ecx, dword [eax + 4]
mov edx, dword [eax]
mov eax, esi
call fcn.004053cc
inc ebx
mov edi, dword [0x4deef4]
cmp ebx, dword [edi + 8]
jl 0x4031bb
mov eax, esi
call fcn.00406204
mov eax, dword [esi + 0x3bc]
call fcn.0044b45c
push 0
xor ecx, ecx
mov dl, 1
mov eax, esi
call fcn.00404ca8
mov word [ebp - 0x30], 0x74
mov edx, 0x4c25dd
lea eax, [ebp - 0x14]
call fcn.004c0ef0
inc dword [ebp - 0x24]
call fcn.0043bc70
mov dword [0x4eded4], eax
dec dword [ebp - 0x24]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.004c1004
cmp dword [0x4eded4], 0
jne 0x4032c2
mov word [ebp - 0x30], 0x80
xor ecx, ecx
mov eax, dword [sym.carthief.exe__frmPlaySound]
mov dword [ebp - 0x18], ecx
lea edx, [ebp - 0x18]
inc dword [ebp - 0x24]
mov eax, dword [eax]
call fcn.0041e638
lea edx, [ebp - 0x18]
lea eax, [ebp - 8]
call fcn.004c1034
dec dword [ebp - 0x24]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.004c1004
cmp dword [ebp - 8], 0
je 0x403282
mov ecx, dword [ebp - 8]
mov eax, dword [ecx - 4]
jmp 0x403284
xor eax, eax
test eax, eax
jne 0x4032c2
mov edx, 0x4c26a3
mov eax, str.The_in_game_music_is_not_installed._Fifteen_exciting_music_tracks_in_one_setup_package_are_available_on_our_web_site_and_can_be_played_completely_free__Open_the_download_page_right_now_
mov ecx, 0x24
call fcn.0043dd2c
cmp eax, 6
jne 0x4032c2
push 1
push 0
mov edx, dword [0x4eda5c]
push 0
push 0x4c26c0
push 0x4c26bb
mov eax, dword [edx]
mov edx, dword [eax + 0x24]
push edx
call sub.SHELL32.DLL_ShellExecuteA
mov word [ebp - 0x30], 0x8c
inc dword [0x4eded4]
mov edx, str.StartsCount
lea eax, [ebp - 0x1c]
call fcn.004c0ef0
inc dword [ebp - 0x24]
mov edx, dword [0x4eded4]
call fcn.0043ba14
dec dword [ebp - 0x24]
lea eax, [ebp - 0x1c]
mov edx, 2
call fcn.004c1004
mov eax, dword [0x4eda60]
mov eax, dword [eax]
call fcn.00472da8
cmp eax, 0x320
jl 0x403320
mov edx, dword [0x4eda60]
mov eax, dword [edx]
call fcn.00472d9c
cmp eax, 0x258
jge 0x403338
mov eax, dword [0x4eda5c]
push 0x30
mov ecx, 0x4c2770
mov edx, str.The_game_is_not_intended_to_work_on_this_screen_resolution._Please_set_the_resolution_to_800x600_or_higher.
mov eax, dword [eax]
call fcn.004c0eac
dec dword [ebp - 0x24]
lea eax, [ebp - 8]
mov edx, 2
call fcn.004c1004
dec dword [ebp - 0x24]
mov ecx, dword [0x4eda60]
mov eax, dword [ecx]
mov dx, word [ebp - 2]
call fcn.00473268
mov word [ebp - 0x30], 0x14
mov ecx, dword [ebp - 0x40]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret