Function at 0x455a20
Capabilities:
Accept command line arguments
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x29c
mov eax, dword [0x542488]
xor eax, ebp
mov dword [ebp - 4], eax
xor eax, eax
mov dword [ebp - 0x214], 0
mov word [ebp - 0x224], ax
lea eax, [ebp - 0x224]
push eax
mov dword [ebp - 0x210], 7
call fcn.00452c10
mov edx, dword [ebp - 0x210]
add esp, 4
cmp edx, 8
jb 0x455a9f
mov ecx, dword [ebp - 0x224]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x455a95
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x456423
push edx
push ecx
call fcn.004b5e6a
add esp, 8
push esi
push edi
push 0x549118
push 0x549120
push 0x455970
push 0x509824
call fcn.004559e0
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.004b8860
add esp, 0xc
lea eax, [ebp - 0x20c]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push str.ksolaunch.exe
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
mov ecx, eax
test ecx, ecx
je 0x455ca5
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x455b03
sub ecx, edx
sar ecx, 1
cmp ecx, 0xd
jne 0x455ca5
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov edx, eax
mov dword [ebp - 0x214], 0
mov ecx, edx
mov dword [ebp - 0x210], 7
xor eax, eax
mov word [ebp - 0x224], ax
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x455b45
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x224]
call fcn.00407d30
xor eax, eax
mov dword [ebp - 0x244], 0
push eax
push 0x503648
lea ecx, [ebp - 0x254]
mov dword [ebp - 0x240], 7
mov word [ebp - 0x254], ax
call fcn.00407d30
lea eax, [ebp - 0x254]
push eax
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.0048abe0
add esp, 4
push eax
call fcn.0041cf20
add esp, 0xc
lea ecx, [ebp - 0x26c]
mov esi, eax
call fcn.00402400
mov edx, dword [ebp - 0x240]
cmp edx, 8
jb 0x455c02
mov ecx, dword [ebp - 0x254]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x455bf8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x456428
push edx
push ecx
call fcn.004b5e6a
add esp, 8
xor eax, eax
mov dword [ebp - 0x244], 0
mov dword [ebp - 0x240], 7
mov word [ebp - 0x254], ax
test esi, esi
je 0x455c2c
cmp esi, 0xffffffff
je 0x455c2c
xor edi, edi
jmp 0x455c3d
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
shl edi, 0x10
or edi, 0xfc19
test esi, esi
je 0x455c4d
cmp esi, 0xffffffff
je 0x455c4d
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, dword [ebp - 0x210]
cmp edx, 8
jb 0x45640f
mov ecx, dword [ebp - 0x224]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x455c87
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45642d
push edx
push ecx
call fcn.004b5e6a
add esp, 8
mov eax, edi
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004b5e78
mov esp, ebp
pop ebp
ret 0x10
lea eax, [ebp - 0x23c]
push eax
call fcn.0041de40
lea eax, [ebp - 0x254]
push eax
call fcn.0041de40
push str.PATH
push 0
lea eax, [ebp - 0x270]
mov dword [ebp - 0x270], 0
push 0
push eax
call fcn.004c9524
mov eax, dword [ebp - 0x244]
xor ecx, ecx
mov edi, dword [ebp - 0x270]
add eax, 2
add edi, eax
mov edx, 2
mov eax, edi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004b5fc1
push edi
mov esi, eax
push 0
push esi
call fcn.004b8860
push str.PATH
push edi
lea eax, [ebp - 0x270]
push esi
push eax
call fcn.004c9524
add esp, 0x38
test eax, eax
jne 0x455d8e
push esi
push 0x509e9c
lea eax, [ebp - 0x254]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.0040cab0
add esp, 0xc
push eax
lea eax, [ebp - 0x224]
push eax
call fcn.00401db0
add esp, 0xc
lea ecx, [ebp - 0x26c]
call fcn.00402400
cmp dword [ebp - 0x210], 8
lea eax, [ebp - 0x224]
cmovae eax, dword [ebp - 0x224]
push eax
push str.PATH
call fcn.004c9810
add esp, 8
lea ecx, [ebp - 0x224]
call fcn.00402400
test esi, esi
je 0x455d9b
push esi
call fcn.004b5fca
add esp, 4
push ebx
lea ecx, [ebp - 0x254]
call fcn.00402400
lea ecx, [ebp - 0x23c]
call fcn.00402400
push 0
or edi, 0xffffffff
call fcn.00489e20
add esp, 4
test al, al
jne 0x45616c
push 0
call fcn.00489920
add esp, 4
test al, al
jne 0x45616c
lea ecx, [ebp - 0x29c]
call fcn.00402a10
xor eax, eax
mov dword [ebp - 0x230], 0
mov word [ebp - 0x254], ax
lea ecx, [ebp - 0x29c]
lea eax, [ebp - 0x230]
mov dword [ebp - 0x22c], 0
push eax
lea eax, [ebp - 0x254]
mov dword [ebp - 0x228], 0
push eax
mov dword [ebp - 0x244], 0
mov dword [ebp - 0x240], 7
call fcn.00402dc0
mov edx, dword [ebp - 0x240]
mov ebx, eax
mov dword [ebp - 0x270], ebx
cmp edx, 8
jb 0x455e80
mov ecx, dword [ebp - 0x254]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x455e76
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x456432
push edx
push ecx
call fcn.004b5e6a
add esp, 8
mov esi, dword [ebp - 0x230]
xor eax, eax
mov dword [ebp - 0x244], 0
mov dword [ebp - 0x240], 7
mov word [ebp - 0x254], ax
test esi, esi
je 0x455f5b
mov ebx, dword [ebp - 0x22c]
cmp esi, ebx
je 0x455f0e
mov ecx, dword [esi + 0x14]
cmp ecx, 8
jb 0x455eee
mov eax, dword [esi]
lea ecx, [ecx*2 + 2]
cmp ecx, 0x1000
jb 0x455ee4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x456432
mov eax, edx
push ecx
push eax
call fcn.004b5e6a
add esp, 8
xor eax, eax
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
add esi, 0x18
cmp esi, ebx
jne 0x455eb5
mov esi, dword [ebp - 0x230]
mov ecx, dword [ebp - 0x228]
mov eax, 0x2aaaaaab
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, esi
shl ecx, 3
cmp ecx, 0x1000
jb 0x455f4b
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x456432
push ecx
push esi
call fcn.004b5e6a
mov ebx, dword [ebp - 0x270]
add esp, 8
cmp ebx, 0xffffffff
je 0x455f6a
cmp bx, 1
jne 0x45610d
push 0
call fcn.00489b50
add esp, 4
test al, al
jne 0x4560e1
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
lea ecx, [ebp - 0x224]
call fcn.00402260
call fcn.0048a5e0
test al, al
je 0x455fea
push 0
push str.ksoqing:
lea ecx, [ebp - 0x224]
call fcn.00404520
cmp eax, 0xffffffff
je 0x455fea
push 0
push 0x50359c
lea ecx, [ebp - 0x224]
call fcn.00404520
cmp eax, 0xffffffff
jne 0x455fea
push 0
push str.ksoqing:
lea ecx, [ebp - 0x224]
call fcn.00404520
push 0xd
push str._qingbangong
push eax
lea ecx, [ebp - 0x224]
call fcn.004045e0
cmp dword [ebp - 0x210], 8
lea eax, [ebp - 0x224]
cmovae eax, dword [ebp - 0x224]
push eax
lea eax, [ebp - 0x230]
push eax
call fcn.00416540
lea eax, [ebp - 0x230]
push eax
call fcn.004557b0
add esp, 0xc
test al, al
je 0x45609e
push 0x506bf0
lea ecx, [ebp - 0x26c]
call fcn.00402260
mov eax, dword [ebp - 0x230]
lea ecx, [ebp - 0x26c]
push ecx
add eax, 0x18
lea ecx, [ebp - 0x230]
push eax
lea eax, [ebp - 0x270]
push eax
call fcn.00433b50
lea ecx, [ebp - 0x26c]
call fcn.00402400
push str._prometheus
lea ecx, [ebp - 0x26c]
call fcn.00402260
mov eax, dword [ebp - 0x230]
lea ecx, [ebp - 0x26c]
push ecx
add eax, 0x18
lea ecx, [ebp - 0x230]
push eax
lea eax, [ebp - 0x270]
push eax
call fcn.00433b50
lea ecx, [ebp - 0x26c]
call fcn.00402400
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x26c]
push eax
call fcn.0041a0d0
add esp, 8
lea ecx, [ebp - 0x29c]
push eax
call fcn.00404800
lea ecx, [ebp - 0x26c]
call fcn.00402400
lea ecx, [ebp - 0x230]
call fcn.00402460
lea ecx, [ebp - 0x224]
call fcn.00402400
lea eax, [ebp - 0x29c]
push eax
lea ecx, [ebp - 0x250]
call fcn.0042c250
push 0
lea ecx, [ebp - 0x250]
call fcn.0042c440
lea ecx, [ebp - 0x250]
mov ebx, eax
call fcn.0042c3b0
lea ecx, [ebp - 0x29c]
call fcn.00402d00
cmp byte [0x54af24], 0
je 0x456154
push 0
push 0
push 0x50cd7d
push str.PrometheusExit
push 1
call fcn.00452d40
add esp, 0x14
cmp byte [0x54af24], 0
je 0x456154
push 0xff
push str.PrometheusExit
call fcn.00452da0
add esp, 8
call fcn.00452ca0
push ebx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
jmp 0x456409
lea ecx, [ebp - 0x29c]
call fcn.00402a10
xor eax, eax
mov dword [ebp - 0x230], 0
mov word [ebp - 0x224], ax
lea ecx, [ebp - 0x29c]
lea eax, [ebp - 0x230]
mov dword [ebp - 0x22c], 0
push eax
lea eax, [ebp - 0x224]
mov dword [ebp - 0x228], 0
push eax
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 7
call fcn.00402dc0
mov edx, dword [ebp - 0x210]
mov edi, eax
cmp edx, 8
jb 0x45620d
mov ecx, dword [ebp - 0x224]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x456203
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x456437
push edx
push ecx
call fcn.004b5e6a
add esp, 8
mov esi, dword [ebp - 0x230]
xor eax, eax
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 7
mov word [ebp - 0x224], ax
test esi, esi
je 0x4562e2
mov ebx, dword [ebp - 0x22c]
cmp esi, ebx
je 0x45629b
mov ecx, dword [esi + 0x14]
cmp ecx, 8
jb 0x45627b
mov eax, dword [esi]
lea ecx, [ecx*2 + 2]
cmp ecx, 0x1000
jb 0x456271
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x456437
mov eax, edx
push ecx
push eax
call fcn.004b5e6a
add esp, 8
xor eax, eax
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
add esi, 0x18
cmp esi, ebx
jne 0x456242
mov esi, dword [ebp - 0x230]
mov ecx, dword [ebp - 0x228]
mov eax, 0x2aaaaaab
sub ecx, esi
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
mov eax, esi
shl ecx, 3
cmp ecx, 0x1000
jb 0x4562d8
mov esi, dword [esi - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x456437
push ecx
push esi
call fcn.004b5e6a
add esp, 8
cmp edi, 0xffffffff
je 0x4562f1
cmp di, 1
jne 0x4563fe
lea eax, [ebp - 0x29c]
push eax
lea ecx, [ebp - 0x238]
call fcn.0042c250
push 2
lea ecx, [ebp - 0x238]
call fcn.0042c440
mov edi, eax
cmp edi, 0xffffffff
je 0x456321
cmp di, 1
jne 0x4563f3
push 0
call fcn.00489e20
add esp, 4
test al, al
je 0x456351
cmp dword [0x549144], 0
je 0x456351
push 0x509838
push dword [0x54911c]
push dword [0x549118]
call fcn.00433b20
add esp, 0xc
xor eax, eax
mov dword [ebp - 0x214], 0
mov word [ebp - 0x224], ax
lea eax, [ebp - 0x224]
push eax
push dword [0x5490f0]
mov dword [ebp - 0x210], 7
call fcn.00417920
add esp, 8
test al, al
je 0x4563a8
lea eax, [ebp - 0x224]
push eax
lea ecx, [ebp - 0x29c]
call fcn.00404800
mov ecx, dword [ebp - 0x234]
test ecx, ecx
je 0x4563a8
call fcn.0042d380
push 1
lea ecx, [ebp - 0x238]
call fcn.0042c440
mov edx, dword [ebp - 0x210]
mov edi, eax
cmp edx, 8
jb 0x4563f3
mov ecx, dword [ebp - 0x224]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4563e9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x45643c
push edx
push ecx
call fcn.004b5e6a
add esp, 8
lea ecx, [ebp - 0x238]
call fcn.0042c3b0
lea ecx, [ebp - 0x29c]
call fcn.00402d00
call fcn.00452ca0
pop ebx
mov ecx, dword [ebp - 4]
mov eax, edi
pop edi
xor ecx, ebp
pop esi
call fcn.004b5e78
mov esp, ebp
pop ebp
ret 0x10
call fcn.004c19b9
call fcn.004c19b9
call fcn.004c19b9
call fcn.004c19b9
call fcn.004c19b9
call fcn.004c19b9
int3