Function at 0x402300
Capabilities:
Terminate process
Write file on windows

Disassembly:
mov eax, 0x6248
call fcn.004180a0
mov eax, dword [0x421420]
xor eax, esp
mov dword [esp + 0x6244], eax
mov eax, dword [esp + 0x6250]
push ebx
mov ebx, dword [esp + 0x6260]
push ebp
mov ebp, dword [esp + 0x6254]
push esi
push edi
push ebp
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x6278]
push ebx
push str.Launching__s_from_master_folder__s_n
mov dword [esp + 0x48], ecx
mov dword [esp + 0x24], edx
mov dword [esp + 0x34], eax
call fcn.0040a3e4
add esp, 0xc
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
mov eax, ebp
add esp, 4
mov byte [esp + 0x3b40], 0
mov esi, eax
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x402374
lea edi, [esp + 0x3b40]
sub eax, esi
add edi, 0xffffffff
lea esp, [esp]
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x402390
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebx
lea eax, [esp + 0x3b40]
call fcn.004015e0
mov eax, ebp
mov byte [esp + 0x27b8], 0
mov esi, eax
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x4023c2
lea edi, [esp + 0x27b8]
sub eax, esi
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x4023d7
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebx
lea eax, [esp + 0x27b8]
call fcn.004015e0
mov ecx, str.JWrapperLaunch
call fcn.004015e0
mov ecx, eax
push 0x41ce6c
push ecx
call fcn.0040a56d
mov esi, eax
add esp, 8
test esi, esi
mov dword [esp + 0x20], esi
jne 0x40244b
lea edx, [esp + 0x27b8]
push edx
push str.Unable_to_open_launch_file__s_n
call fcn.0040a3e4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 0xc
push 1
call fcn.0040b19d
push 0x7d0
call fcn.004095e0
add esp, 4
push 0x7d0
push 0
push eax
mov dword [esp + 0x20], eax
call fcn.0040fa70
add esp, 0xc
push 0x28
push esi
call fcn.004093f0
push eax
call fcn.0040abd0
add esp, 0xc
push 0x400
push esi
mov dword [esp + 0x34], eax
call fcn.004093f0
push 0x400
push esi
mov dword [esp + 0x48], eax
call fcn.004093f0
push 0x400
push esi
call fcn.004093f0
push 0x400
push esi
mov dword [esp + 0x30], eax
call fcn.004093f0
push 0x28
push esi
call fcn.004093f0
push eax
call fcn.0040abd0
add esp, 0x2c
push 0x28
push esi
call fcn.004093f0
push eax
call fcn.0040abd0
add esp, 0xc
mov ebx, eax
push 0x28
push esi
mov dword [esp + 0x3c], ebx
call fcn.004093f0
push eax
call fcn.0040abd0
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x627c]
add esp, 0xc
test eax, eax
mov dword [esp + 0x1c], 0
jne 0x402719
mov eax, dword [esp + 0x18]
push eax
mov eax, ebp
call fcn.00401e40
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4026f4
push ebx
push str.Using_private_JRE__s_n
call fcn.0040a3e4
mov eax, ebp
add esp, 8
mov byte [esp + 0xa8], 0
mov ecx, eax
lea esp, [esp]
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x402540
lea edi, [esp + 0xa8]
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x402557
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, ebx
lea eax, [esp + 0xa8]
call fcn.004015e0
mov ecx, 0x41d13c
call fcn.004015e0
mov byte [esp + 0x1430], 0
mov ecx, eax
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x402591
lea edi, [esp + 0x1430]
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x4025a8
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, str.javaw.exe
lea eax, [esp + 0x1430]
call fcn.004015e0
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0xa8]
call fcn.004015e0
add eax, 0xffffffff
mov cl, byte [eax + 1]
add eax, 1
test cl, cl
jne 0x4025e4
mov ecx, dword [str..exe]
mov dl, byte [0x41d150]
mov dword [eax], ecx
mov byte [eax + 4], dl
lea eax, [esp + 0xa8]
push 0x41ce6c
push eax
call fcn.0040a56d
add esp, 8
test eax, eax
je 0x402638
push eax
call fcn.0040ae69
add esp, 4
lea ecx, [esp + 0xa8]
push ecx
push str.File_exists:__s_n
call fcn.0040a3e4
add esp, 8
jmp 0x40264b
lea eax, [esp + 0xa8]
lea ecx, [esp + 0x1430]
call fcn.004019c0
mov esi, ebx
call fcn.00401660
lea edx, [eax + ebx + 1]
push 0x2710
mov dword [esp + 0x14], edx
call fcn.004095e0
mov ebx, eax
mov eax, ebp
add esp, 4
mov dword [esp + 0x1c], ebx
mov byte [ebx], 0
mov esi, eax
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x402674
mov edi, ebx
sub eax, esi
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x402684
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, str.JWApps
mov eax, ebx
call fcn.004015e0
mov ecx, str.JRE_LastSuccessfulOptions_
call fcn.004015e0
mov eax, dword [esp + 0x10]
mov esi, eax
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x4026b8
mov edi, ebx
sub eax, esi
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x4026c8
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
push ebx
push str.JRE_LSO_file_is__s_n
rep movsb byte es:[edi], byte [esi]
call fcn.0040a3e4
mov ebx, dword [esp + 0x3c]
jmp 0x402771
push str.No_private_JRE_available__n
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 4
push 1
call fcn.0040b19d
cmp eax, 1
jne 0x402774
mov eax, dword [esp + 0x18]
mov byte [esp + 0xa8], 0
mov ecx, eax
lea esp, [esp]
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x402730
lea edi, [esp + 0xa8]
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x402747
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
lea eax, [esp + 0xa8]
push eax
and ecx, 3
push str.Checking_for_existing_system_JRE__s_n
rep movsb byte es:[edi], byte [esi]
call fcn.0040a3e4
add esp, 8
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
mov edx, dword [esp + 0x18]
add esp, 4
test ebx, ebx
lea ecx, [esp + 0xa8]
mov dword [edx], ecx
mov dword [esp + 0x10], 1
jle 0x402843
push 0x64
call fcn.004095e0
mov ebp, eax
add esp, 4
mov byte [ebp], 0
add eax, 0xffffffff
mov cl, byte [eax + 1]
add eax, 1
test cl, cl
jne 0x4027b5
mov ecx, dword [str._Xmx]
mov dword [eax], ecx
mov dl, byte [0x41d1d4]
mov byte [eax + 4], dl
push ebx
lea eax, [esp + 0x44]
push 0x41d1d8
push eax
mov byte [esp + 0x4c], 0
call fcn.00409c4f
lea eax, [esp + 0x4c]
add esp, 0xc
mov ecx, eax
mov edi, edi
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x4027f0
mov edi, ebp
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x402802
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, ebp
add edi, 0xffffffff
nop
mov al, byte [edi + 1]
add edi, 1
test al, al
jne 0x402820
mov cx, word [0x41d1dc]
mov edx, dword [esp + 0x14]
mov word [edi], cx
mov dword [edx + 4], ebp
mov dword [esp + 0x10], 2
mov esi, dword [esp + 0x24]
test esi, esi
jle 0x4028f6
push 0x64
call fcn.004095e0
mov ebp, eax
add esp, 4
mov byte [ebp], 0
add eax, 0xffffffff
mov cl, byte [eax + 1]
add eax, 1
test cl, cl
jne 0x402862
mov ecx, dword [str._Xms]
mov dword [eax], ecx
mov dl, byte [0x41d1e4]
mov byte [eax + 4], dl
push esi
lea eax, [esp + 0x44]
push 0x41d1d8
push eax
mov byte [esp + 0x4c], 0
call fcn.00409c4f
lea eax, [esp + 0x4c]
add esp, 0xc
mov ecx, eax
jmp 0x4028a0
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x4028a0
mov edi, ebp
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x4028b2
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, ebp
add edi, 0xffffffff
nop
mov al, byte [edi + 1]
add edi, 1
test al, al
jne 0x4028d0
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov cx, word [0x41d1dc]
mov dword [edx + eax*4], ebp
add eax, 1
mov word [edi], cx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [ecx + eax*4], 0x41d1e8
add eax, 1
push str.Building_classpath_n
mov dword [esp + 0x14], eax
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 4
push 0xc350
call fcn.004095e0
mov edx, dword [esp + 0x24]
add esp, 4
mov ebx, eax
push 0x28
push edx
mov byte [ebx], 0
call fcn.004093f0
push eax
call fcn.0040abd0
add esp, 0xc
xor ebp, ebp
test eax, eax
mov dword [esp + 0x24], eax
jle 0x4029dc
nop
test ebp, ebp
jle 0x402983
mov edi, ebx
add edi, 0xffffffff
lea esp, [esp]
mov al, byte [edi + 1]
add edi, 1
test al, al
jne 0x402970
mov ax, word [0x41d200]
mov word [edi], ax
lea eax, [esp + 0x3b40]
mov esi, eax
lea esp, [esp]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x402990
mov edi, ebx
sub eax, esi
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x4029a0
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x20]
push 0x400
push ecx
call fcn.004093f0
mov ecx, eax
add esp, 8
mov eax, ebx
call fcn.004015e0
add ebp, 1
cmp ebp, dword [esp + 0x24]
jl 0x402960
mov eax, ebx
mov edi, edi
movsx ecx, byte [eax]
cmp ecx, 0x2f
jne 0x4029eb
mov byte [eax], 0x5c
add eax, 1
test ecx, ecx
jne 0x4029e0
mov ebp, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [edx + ebp*4], ebx
add ebp, 1
push str.Built_classpath_OK_n
mov dword [esp + 0x14], ebp
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 4
push str.Creating_launch_properties_n
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
mov edi, dword [esp + 0x34]
add esp, 4
xor eax, eax
xor edx, edx
mov cl, byte [edi + eax]
add eax, 1
test cl, cl
jne 0x402a46
add edx, 1
cmp edx, 2
jl 0x402a48
add eax, 0x30d3e
push eax
call fcn.004095e0
mov esi, eax
add esp, 4
mov byte [esi], 0
xor eax, eax
xor edx, edx
mov cl, byte [edi + eax]
add eax, 1
test cl, cl
jne 0x402a6f
add edx, 1
cmp edx, 2
jl 0x402a71
push eax
push edi
push esi
call fcn.004101f0
add esp, 0xc
push str.jwstat_
mov ebx, esi
call fcn.00409310
add esp, 4
push str.update_url
call fcn.00409390
mov eax, dword [esp + 0x40]
add esp, 4
push eax
call fcn.00409310
add esp, 4
push str.jwstat_
call fcn.00409310
add esp, 4
push str.app_dir
call fcn.00409390
lea ecx, [esp + 0x3b44]
add esp, 4
push ecx
call fcn.00409310
add esp, 4
push str.jwstat_
call fcn.00409310
add esp, 4
push str.jre_name
call fcn.00409390
mov edx, dword [esp + 0x1c]
add esp, 4
push edx
call fcn.00409310
add esp, 4
push str.jwstat_
call fcn.00409310
add esp, 4
push str.launched_from_dynprops
call fcn.00409390
mov eax, dword [esp + 0x2c]
add esp, 4
push eax
call fcn.00409310
add esp, 4
push str.Checking_LSO_file_n
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
mov edi, dword [esp + 0x20]
add esp, 4
test edi, edi
je 0x402d51
push edi
push str.Reading__s_n
call fcn.0040a3e4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 0xc
push 0x41ce6c
push edi
call fcn.0040a56d
add esp, 8
test eax, eax
mov dword [esp + 0x18], eax
je 0x402d4a
push str.JRE_LSO_file_exists_n
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
mov ecx, dword [esp + 0x1c]
add esp, 4
push 0x28
push ecx
call fcn.004093f0
push eax
call fcn.0040abd0
mov edi, eax
add esp, 0xc
push edi
push str.Found__ld_JVM_Options_n
mov dword [esp + 0x30], edi
call fcn.0040a3e4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 0xc
push edi
lea edx, [esp + 0x1434]
push 0x41d2bc
push edx
mov byte [esp + 0x143c], 0
call fcn.00409c4f
add esp, 0xc
push str.jwstat_
call fcn.00409310
add esp, 4
push str.jvm_options_count
call fcn.00409390
lea eax, [esp + 0x1434]
add esp, 4
push eax
call fcn.00409310
xor ebx, ebx
add esp, 4
xor ebp, ebp
cmp edi, ebx
jle 0x402d3a
jmp 0x402c42
xor ebx, ebx
mov ecx, dword [esp + 0x18]
push 0x400
push ecx
call fcn.004093f0
mov edi, eax
push edi
push str.JVM_Option:__s_n
call fcn.0040a3e4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
add esp, 0x14
mov dword [edx + eax*4], edi
add eax, 1
push ebp
mov dword [esp + 0x14], eax
lea eax, [esp + 0x1434]
push str.jvm_options__d
push eax
mov byte [esp + 0x143c], bl
call fcn.00409c4f
mov eax, edi
add esp, 0xc
lea ecx, [eax + 1]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x402ca3
sub eax, ecx
cmp eax, 0x64
jae 0x402cc3
push edi
lea ecx, [esp + 0x1434]
push ecx
push str.Launch_Prop:__s___s_n
jmp 0x402cec
push 0x63
lea edx, [esp + 0x44]
push edi
push edx
call fcn.0040a2c0
add esp, 0xc
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x1434]
push ecx
mov byte [esp + 0xab], bl
push str.Launch_Prop:__s___s..._n
call fcn.0040a3e4
add esp, 0xc
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 4
push str.jwstat_
mov ebx, esi
call fcn.00409310
lea edx, [esp + 0x1434]
add esp, 4
push edx
call fcn.00409390
add esp, 4
push edi
call fcn.00409310
add ebp, 1
add esp, 4
cmp ebp, dword [esp + 0x28]
jl 0x402c40
mov eax, dword [esp + 0x18]
push eax
call fcn.0040ae69
mov ebp, dword [esp + 0x14]
jmp 0x402d6c
push str.JRE_LSO_file_does_not_exist_n
jmp 0x402d56
push str.Not_a_private_JRE__no_need_to_check_for_LSO_file__n
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 4
mov dword [esp + 0x1c], ebp
push str.Writing_launch_properties_file_n
add ebp, 1
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 4
lea ecx, [esp + 0x3b40]
lea ebx, [esp + 0x4ec8]
mov byte [esp + 0x4ec8], 0
call fcn.004021f0
mov ecx, ebx
push ecx
push str.Writing_launch_properties_to__s_n
call fcn.0040a3e4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 0xc
xor eax, eax
xor edx, edx
mov cl, byte [eax + esi]
add eax, 1
test cl, cl
jne 0x402dcf
add edx, 1
cmp edx, 2
jl 0x402dd1
add eax, 0xfffffffe
push eax
push str.Launch_properties_length_is__d_n
call fcn.0040a3e4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 0xc
lea edx, [esp + 0x4ec8]
push 0x41cf88
push edx
call fcn.0040a56d
mov edi, eax
add esp, 8
test edi, edi
jne 0x402e42
push str.Unable_to_write_Launch_Properties_file__Cannot_run__n
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 4
push 0x63
call fcn.0040b19d
push str.Writing_to_file_n
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 4
xor eax, eax
xor edx, edx
mov cl, byte [eax + esi]
add eax, 1
test cl, cl
jne 0x402e62
add edx, 1
cmp edx, 2
jl 0x402e64
push edi
add eax, 0xfffffffe
push eax
push 1
push esi
call fcn.0040a98e
push str.Flushing_n
call fcn.0040a3e4
add esp, 0x14
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 4
push edi
call fcn.0040a0f5
add esp, 4
push str.Closing_n
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 4
push edi
call fcn.0040ae69
add esp, 4
push str.Wrote_launch_properties_file_OK_n
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x24]
add esp, 4
lea eax, [esp + 0x4ec8]
push 0x28
mov dword [ecx + ebp*4], eax
push ebx
add ebp, 1
call fcn.004093f0
push eax
call fcn.0040abd0
add esp, 0xc
mov esi, eax
push esi
push str.Reading__ld_extra_args_n
call fcn.0040a3e4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 0xc
test esi, esi
jle 0x402f59
mov edi, dword [esp + 0x14]
jmp 0x402f40
push 0x400
push ebx
call fcn.004093f0
mov dword [edi + ebp*4], eax
add esp, 8
add ebp, 1
sub esi, 1
jne 0x402f40
mov esi, dword [esp + 0x2c]
xor edi, edi
cmp esi, 3
jl 0x402f7f
push 0x400
push ebx
call fcn.004093f0
mov edi, eax
push edi
push str.Read_JRE_compatibility_class__s_n
call fcn.0040a3e4
add esp, 0x10
cmp esi, 4
jl 0x402f9d
push 0x400
push ebx
call fcn.004093f0
push 0x400
push ebx
call fcn.004093f0
add esp, 0x10
cmp esi, 5
jl 0x402fd7
push 0x28
push ebx
call fcn.004093f0
push eax
call fcn.0040abd0
add esp, 0xc
test eax, eax
jle 0x402fd7
mov esi, eax
lea esp, [esp]
push 0x400
push ebx
call fcn.004093f0
add esp, 8
sub esi, 1
jne 0x402fc0
mov esi, dword [esp + 0x2c]
cmp esi, 6
jl 0x402fed
push 0x28
push ebx
call fcn.004093f0
push eax
call fcn.0040abd0
add esp, 0xc
mov eax, dword [esp + 0x6270]
test eax, eax
jne 0x403009
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov dword [ecx + eax*4], edx
jmp 0x403019
cmp eax, 1
jne 0x403019
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov dword [eax + edx*4], edi
mov esi, dword [esp + 0x6264]
push esi
push str.Appending__d_command_line_args_n
call fcn.0040a3e4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 0xc
test esi, esi
jle 0x403056
mov ecx, dword [esp + 0x14]
mov eax, esi
mov esi, dword [esp + 0x6268]
lea edi, [ecx + ebp*4]
mov ecx, eax
rep movsd dword es:[edi], dword [esi]
add ebp, eax
mov edi, dword [esp + 0x14]
push ebx
mov dword [edi + ebp*4], 0
call fcn.0040ae69
add esp, 4
push str.LAUNCHING:_n
call fcn.0040a3e4
add esp, 4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 4
lea edx, [esp + 0xa8]
push edx
push str.EXE:__s_n
call fcn.0040a3e4
add esp, 8
xor esi, esi
test ebp, ebp
jle 0x4030bc
mov eax, dword [edi + esi*4]
push eax
push esi
push str.ARG__d:__s_n
call fcn.0040a3e4
add esi, 1
add esp, 0xc
cmp esi, ebp
jl 0x4030a3
mov dword [edi + ebp*4], 0
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
mov eax, dword [esp + 0x6274]
add esp, 4
test eax, eax
jne 0x4031ce
push str._Spawner__Creating_spawner_n
call fcn.0040a3e4
add esp, 4
push 0x7d0
call fcn.004095e0
add esp, 4
push 0x7d0
mov ebx, eax
push 0
push ebx
call fcn.0040fa70
mov esi, dword [edi]
add esp, 0xc
push esi
push str._Spawner__Setting_spawner_exe_to__s_n
call fcn.0040a3e4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 0xc
xor eax, eax
nop
cmp dword [ebx + eax*4], 0
je 0x4031b8
add eax, 1
cmp eax, 0x1f4
jl 0x403130
push esi
push str._Spawner__WARNING:_couldnt_append_argument__s_n
call fcn.0040a3e4
mov ecx, dword [edi + 4]
add esp, 8
test ecx, ecx
mov esi, 1
je 0x40318b
mov edi, edi
xor eax, eax
cmp dword [ebx + eax*4], 0
je 0x4031c3
add eax, 1
cmp eax, 0x1f4
jl 0x403162
push ecx
push str._Spawner__WARNING:_couldnt_append_argument__s_n
call fcn.0040a3e4
mov ecx, dword [edi + esi*4 + 4]
add esi, 1
add esp, 8
test ecx, ecx
jne 0x403160
call fcn.004080a0
mov esi, eax
test esi, esi
je 0x4031b2
push esi
push str.Attempt_to_launch_app_failed_with_return_code__ld___app_likely_did_not_launch_at_all__n
call fcn.0040a3e4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 0xc
push esi
call fcn.0040b19d
push esi
mov dword [ebx + eax*4], esi
push str._Spawner__Appended_argument__s_n
jmp 0x40314a
push ecx
mov dword [ebx + eax*4], ecx
push str._Spawner__Appended_argument__s_n
jmp 0x403178
cmp eax, 1
jne 0x4032c6
push str._Spawner__Creating_spawner_n
call fcn.0040a3e4
add esp, 4
push 0x7d0
call fcn.004095e0
add esp, 4
push 0x7d0
mov ebx, eax
push 0
push ebx
call fcn.0040fa70
mov esi, dword [edi]
add esp, 0xc
push esi
push str._Spawner__Setting_spawner_exe_to__s_n
call fcn.0040a3e4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 0xc
xor eax, eax
cmp dword [ebx + eax*4], 0
je 0x4032b0
add eax, 1
cmp eax, 0x1f4
jl 0x403223
push esi
push str._Spawner__WARNING:_couldnt_append_argument__s_n
call fcn.0040a3e4
mov ecx, dword [edi + 4]
add esp, 8
test ecx, ecx
mov esi, 1
je 0x403280
xor eax, eax
cmp dword [ebx + eax*4], 0
je 0x4032bb
add eax, 1
cmp eax, 0x1f4
jl 0x403253
push ecx
push str._Spawner__WARNING:_couldnt_append_argument__s_n
call fcn.0040a3e4
mov ecx, dword [edi + esi*4 + 4]
add esi, 1
add esp, 8
test ecx, ecx
jne 0x403251
call fcn.00407ed0
push ebx
mov esi, eax
call fcn.00409503
add esp, 4
push esi
push str.Return_code__ld_n
call fcn.0040a3e4
call fcn.00409d61
add eax, 0x20
push eax
call fcn.0040a0f5
add esp, 0xc
mov eax, esi
jmp 0x4032c9
push esi
mov dword [ebx + eax*4], esi
push str._Spawner__Appended_argument__s_n
jmp 0x40323d
push ecx
mov dword [ebx + eax*4], ecx
push str._Spawner__Appended_argument__s_n
jmp 0x40326d
or eax, 0xffffffff
mov ecx, dword [esp + 0x6254]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004094f4
add esp, 0x6248
ret