Function at 0x4310d2
Capabilities:
Accept command line arguments
Create process on windows
Create process suspended

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a5fae
mov eax, dword fs:[0]
push eax
sub esp, 0x3f8
mov eax, dword [0x4d63e4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x3b8], ecx
cmp byte [0x4ddca0], 0
mov edi, dword [ebp + 0xc]
mov esi, dword [ebp + 0x10]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x3bc], edi
mov dword [ebp - 0x3c0], esi
je 0x430df5
push 0
push 0
push 0x4ad120
push str.PrometheusCreateProcess
push 1
call fcn.004327c0
add esp, 0x14
cmp byte [0x4ddca0], 0
je 0x430df5
push 0xff
push str.PrometheusCreateProcess
call fcn.00432800
add esp, 8
xor eax, eax
mov dword [ebp - 0x238], 0
mov dword [ebp - 0x234], 7
mov word [ebp - 0x248], ax
cmp dword [ebx + 0x14], 8
mov dword [ebp - 4], eax
mov byte [ebp - 0x3b1], al
mov eax, ebx
jb 0x430e25
mov eax, dword [ebx]
push dword [0x4ddc68]
push eax
call fcn.0041cd30
add esp, 8
test eax, eax
je 0x430eb1
cmp dword [ebx + 0x14], 8
mov eax, ebx
jb 0x430e42
mov eax, dword [ebx]
push dword [0x4ddc6c]
push eax
call fcn.0041cd30
add esp, 8
test eax, eax
je 0x430eb1
cmp dword [ebx + 0x14], 8
mov eax, ebx
jb 0x430e5f
mov eax, dword [ebx]
push dword [0x4ddc70]
push eax
call fcn.0041cd30
add esp, 8
test eax, eax
je 0x430eb1
cmp dword [ebx + 0x14], 8
mov eax, ebx
jb 0x430e7c
mov eax, dword [ebx]
push dword [0x4ddc74]
push eax
call fcn.0041cd30
add esp, 8
test eax, eax
je 0x430eb1
cmp dword [ebx + 0x14], 8
mov eax, ebx
jb 0x430e99
mov eax, dword [ebx]
push dword [0x4ddc80]
push eax
call fcn.0041cd30
add esp, 8
test eax, eax
jne 0x430ed1
cmp edi, 1
jne 0x430ed1
push 1
call fcn.0045ad00
add esp, 4
test al, al
je 0x430ed1
mov esi, dword [ebp - 0x3b8]
mov byte [ebp - 0x3b1], 1
jmp 0x43100a
push ebx
lea eax, [ebp - 0x320]
push 0x4ac7ac
push eax
call fcn.004064e0
mov esi, eax
add esp, 0xc
lea eax, [ebp - 0x248]
cmp eax, esi
je 0x430f9b
mov edx, dword [ebp - 0x234]
cmp edx, 8
jb 0x430f36
mov ecx, dword [ebp - 0x248]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x430f2c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f6a
push edx
push ecx
call fcn.0046c40b
add esp, 8
mov dword [ebp - 0x238], 0
xor eax, eax
mov word [ebp - 0x248], ax
mov dword [ebp - 0x234], 7
mov eax, dword [esi]
mov dword [ebp - 0x248], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x244], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x240], eax
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x23c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x238], eax
mov eax, dword [esi + 0x14]
mov dword [ebp - 0x234], eax
xor eax, eax
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x320]
call fcn.00402340
mov esi, dword [ebp - 0x3b8]
lea eax, [ebp - 0x350]
push eax
mov ecx, esi
call fcn.00430ab0
push eax
lea eax, [ebp - 0x338]
mov byte [ebp - 4], 1
push str.__from_prome__prome_pipe_token
push eax
call fcn.00406460
add esp, 0xc
cmp dword [eax + 0x14], 8
mov ecx, eax
mov byte [ebp - 4], 2
jb 0x430fe1
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x248]
call fcn.00402cb0
lea ecx, [ebp - 0x338]
call fcn.00402340
lea ecx, [ebp - 0x350]
mov byte [ebp - 4], 0
call fcn.00402340
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.0046edf0
mov ecx, dword [esi]
add esp, 0xc
call fcn.004043f0
mov ecx, eax
call fcn.004043f0
mov esi, eax
mov ecx, esi
call fcn.004043b0
test eax, eax
je 0x431166
mov ecx, esi
call fcn.004043b0
push eax
lea eax, [ebp - 0x218]
push 0x104
push eax
call fcn.00479544
add esp, 0xc
lea ecx, [ebp - 0x2c0]
push ebx
call fcn.00401980
cmp dword [ebp - 0x2ac], 8
lea eax, [ebp - 0x2c0]
push dword [0x4ddc74]
cmovae eax, dword [ebp - 0x2c0]
push eax
mov byte [ebp - 4], 3
call fcn.0041cd30
add esp, 8
test eax, eax
jne 0x4310a6
push 0xa
push str.wpspdf.exe
lea ecx, [ebp - 0x2c0]
call fcn.00402e30
jmp 0x4310ec
cmp dword [ebp - 0x2ac], 8
lea eax, [ebp - 0x2c0]
push 0x4b1604
cmovae eax, dword [ebp - 0x2c0]
push eax
call fcn.0041cce0
add esp, 8
lea ecx, [ebp - 0x2c0]
test eax, eax
jne 0x4310e0
push 0xa
push str.wpsofd.exe
call fcn.00402e30
jmp 0x4310ec
push 4
push str..exe
call fcn.00402cb0
lea edi, [ebp - 0x218]
add edi, 0xfffffffe
mov ax, word [edi + 2]
lea edi, [edi + 2]
test ax, ax
jne 0x4310f5
cmp dword [ebp - 0x2ac], 8
lea edx, [ebp - 0x2c0]
mov eax, dword [0x4ac8f4]
cmovae edx, dword [ebp - 0x2c0]
mov dword [edi], eax
mov esi, edx
mov edi, edi
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x431120
lea edi, [ebp - 0x218]
sub edx, esi
add edi, 0xfffffffe
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x431136
mov ecx, edx
mov byte [ebp - 4], al
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x2c0]
call fcn.00402340
mov edi, dword [ebp - 0x3bc]
jmp 0x43117a
push 0x104
lea eax, [ebp - 0x218]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xor eax, eax
mov dword [ebp - 0x2f8], 0
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x2f4], 7
mov word [ebp - 0x308], ax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4311a0
sub ecx, edx
lea eax, [ebp - 0x218]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x308]
call fcn.00402e30
lea eax, [ebp - 0x308]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x2f0]
call fcn.00401980
mov eax, dword [ebp - 0x3c0]
xor ecx, ecx
push 0x40
push ecx
mov byte [ebp - 4], 5
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
lea eax, [ebp - 0x400]
push eax
mov dword [ebp - 0x404], 0x44
call fcn.0046edf0
add esp, 0xc
mov dword [ebp - 0x3d8], 1
mov eax, 1
mov word [ebp - 0x3d4], ax
test edi, edi
je 0x43128b
cmp byte [ebp - 0x3b1], 0
jne 0x43128b
lea eax, [ebp - 0x380]
push edi
push eax
call fcn.0041b620
push eax
lea eax, [ebp - 0x368]
mov byte [ebp - 4], 6
push str.__prome_prestart_type
push eax
call fcn.00406460
add esp, 0x14
cmp dword [eax + 0x14], 8
mov ecx, eax
mov byte [ebp - 4], 7
jb 0x431262
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x248]
call fcn.00402cb0
lea ecx, [ebp - 0x368]
call fcn.00402340
lea ecx, [ebp - 0x380]
mov byte [ebp - 4], 5
call fcn.00402340
mov esi, dword [sym.imp.KERNEL32.dll_GetCommandLineW]
call esi
push str._PFMonChildProc
push eax
call fcn.0046f178
add esp, 8
test eax, eax
je 0x4313a2
lea eax, [ebp - 0x3b0]
push ebx
push eax
call fcn.00431f90
add esp, 8
mov esi, eax
push 1
xor eax, eax
mov byte [ebp - 4], 8
push 0x4ac7b4
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.00402e30
push esi
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x398]
push eax
call fcn.004063b0
add esp, 0xc
cmp dword [eax + 0x14], 8
mov ecx, eax
mov byte [ebp - 4], 0xa
jb 0x431317
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x248]
call fcn.00402cb0
lea ecx, [ebp - 0x398]
call fcn.00402340
mov edx, dword [ebp - 0x21c]
mov byte [ebp - 4], 8
cmp edx, 8
jb 0x431375
mov ecx, dword [ebp - 0x230]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43136b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f6f
push edx
push ecx
call fcn.0046c40b
add esp, 8
xor eax, eax
mov dword [ebp - 0x220], 0
lea ecx, [ebp - 0x3b0]
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.00402340
jmp 0x431457
call esi
push str._CreateCmdDb
push eax
call fcn.0046f178
add esp, 8
test eax, eax
je 0x431457
push 0xe
xor eax, eax
mov dword [ebp - 0x220], 0
push str.__create_cmddb
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.00402e30
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
push dword [ebp - 0x220]
cmovae eax, dword [ebp - 0x230]
lea ecx, [ebp - 0x248]
push eax
mov byte [ebp - 4], 0xb
call fcn.00402cb0
mov edx, dword [ebp - 0x21c]
mov byte [ebp - 4], 5
cmp edx, 8
jb 0x431457
mov ecx, dword [ebp - 0x230]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x43144d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f83
push edx
push ecx
call fcn.0046c40b
add esp, 8
xor eax, eax
mov dword [ebp - 0x2c8], 0
mov dword [ebp - 0x2c4], 7
mov word [ebp - 0x2d8], ax
lea eax, [ebp - 0x2d8]
mov byte [ebp - 4], 0xc
push eax
call fcn.00430b80
add esp, 4
test al, al
je 0x4315d5
push 1
xor eax, eax
mov dword [ebp - 0x268], 0
push 0x4ac7b4
lea ecx, [ebp - 0x278]
mov dword [ebp - 0x264], 7
mov word [ebp - 0x278], ax
call fcn.00402e30
cmp dword [ebp - 0x2c4], 8
lea eax, [ebp - 0x2d8]
push dword [ebp - 0x2c8]
cmovae eax, dword [ebp - 0x2d8]
lea ecx, [ebp - 0x278]
push eax
mov byte [ebp - 4], 0xd
call fcn.00402cb0
xor edi, edi
mov ecx, dword [eax + 4]
mov esi, dword [eax]
mov edx, dword [eax + 0x10]
mov dword [ebp - 0x28c], ecx
mov ecx, dword [eax + 8]
mov dword [ebp - 0x288], ecx
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x284], ecx
mov ecx, dword [eax + 0x14]
mov dword [ebp - 0x290], esi
mov dword [ebp - 0x280], edx
mov dword [ebp - 0x27c], ecx
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], di
cmp ecx, 8
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x290]
cmovae eax, esi
lea ecx, [ebp - 0x248]
push edx
push eax
call fcn.00402cb0
mov edx, dword [ebp - 0x27c]
mov byte [ebp - 4], 0xd
cmp edx, 8
jb 0x431591
mov ecx, dword [ebp - 0x290]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431587
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f74
push edx
push ecx
call fcn.0046c40b
add esp, 8
mov edx, dword [ebp - 0x264]
mov byte [ebp - 4], 0xc
cmp edx, 8
jb 0x4315d5
mov ecx, dword [ebp - 0x278]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4315cb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f74
push edx
push ecx
call fcn.0046c40b
add esp, 8
cmp byte [ebp - 0x3b1], 0
mov eax, dword [ebp - 0x3b8]
mov ecx, dword [eax]
je 0x4318cf
call fcn.004043f0
mov ecx, eax
call fcn.004043f0
mov ecx, eax
call fcn.00403890
lea ecx, [ebp - 0x29c]
push ecx
mov ecx, eax
call fcn.00407350
push ebx
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0xf
push 0x4ac7ac
push eax
call fcn.004064e0
add esp, 0xc
mov ecx, dword [ebp - 0x298]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x29c]
mov ebx, 1
sub ecx, esi
mov byte [ebp - 4], 0x10
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x3bc], eax
cmp eax, ebx
jle 0x43185a
mov edi, 0x18
nop
cmp dword [edi + esi + 0x14], 8
lea eax, [edi + esi]
jb 0x43166c
mov eax, dword [eax]
push str._prometheus
push eax
call fcn.0041cd30
add esp, 8
test eax, eax
je 0x431843
cmp dword [ebp - 0x24c], 8
lea ecx, [ebp - 0x260]
mov eax, dword [ebp - 0x29c]
cmovae ecx, dword [ebp - 0x260]
add eax, edi
cmp dword [eax + 0x14], 8
jb 0x4316a6
mov eax, dword [eax]
push ecx
push eax
call fcn.0041cd30
add esp, 8
test eax, eax
je 0x431843
mov eax, dword [ebp - 0x29c]
add eax, edi
push eax
lea eax, [ebp - 0x290]
push eax
call fcn.0041c8b0
add esp, 8
mov esi, eax
push 1
xor eax, eax
mov byte [ebp - 4], 0x11
push 0x4ac7b4
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.00402e30
push esi
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x12
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.004063b0
add esp, 0xc
cmp dword [eax + 0x14], 8
mov ecx, eax
mov byte [ebp - 4], 0x13
jb 0x43172e
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x248]
call fcn.00402cb0
mov edx, dword [ebp - 0x264]
mov byte [ebp - 4], 0x12
cmp edx, 8
jb 0x431781
mov ecx, dword [ebp - 0x278]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431777
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f6a
push edx
push ecx
call fcn.0046c40b
add esp, 8
mov edx, dword [ebp - 0x21c]
xor eax, eax
mov dword [ebp - 0x268], 0
mov dword [ebp - 0x264], 7
mov word [ebp - 0x278], ax
mov byte [ebp - 4], 0x11
cmp edx, 8
jb 0x4317e2
mov ecx, dword [ebp - 0x230]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4317d8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f6a
push edx
push ecx
call fcn.0046c40b
add esp, 8
mov edx, dword [ebp - 0x27c]
xor eax, eax
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
mov byte [ebp - 4], 0x10
cmp edx, 8
jb 0x431843
mov ecx, dword [ebp - 0x290]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431839
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f6a
push edx
push ecx
call fcn.0046c40b
add esp, 8
inc ebx
add edi, 0x18
cmp ebx, dword [ebp - 0x3bc]
jge 0x43185a
mov esi, dword [ebp - 0x29c]
jmp 0x431660
mov edx, dword [ebp - 0x24c]
mov byte [ebp - 4], 0xf
cmp edx, 8
jb 0x43189e
mov ecx, dword [ebp - 0x260]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431894
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f79
push edx
push ecx
call fcn.0046c40b
add esp, 8
xor eax, eax
mov dword [ebp - 0x250], 0
lea ecx, [ebp - 0x29c]
mov dword [ebp - 0x24c], 7
mov word [ebp - 0x260], ax
mov byte [ebp - 4], 0xc
call fcn.00403760
jmp 0x431c75
lea eax, [ebp - 0x2a8]
push eax
call fcn.004043f0
mov ecx, eax
call fcn.0042b900
cmp dword [ebp - 0x298], 0
mov byte [ebp - 4], 0x14
je 0x431c31
cmp dword [ebp - 0x294], 8
lea ecx, [ebp - 0x3b8]
lea eax, [ebp - 0x2a8]
mov dword [ebp - 0x3b8], 0
cmovae eax, dword [ebp - 0x2a8]
push ecx
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov ebx, eax
mov dword [ebp - 0x3bc], ebx
test ebx, ebx
je 0x431c31
xor edi, edi
cmp dword [ebp - 0x3b8], edi
jle 0x431c2a
lea ecx, [ecx]
mov edx, dword [ebx + edi*4]
xor eax, eax
mov ecx, edx
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 7
mov word [ebp - 0x260], ax
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x431965
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x260]
call fcn.00402e30
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [ebp - 0x3b1]
call fcn.00430560
mov edx, dword [ebp - 0x24c]
test al, al
mov byte [ebp - 4], 0x14
sete bl
cmp edx, 8
jb 0x4319e0
mov ecx, dword [ebp - 0x260]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4319d6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f6a
push edx
push ecx
call fcn.0046c40b
add esp, 8
test bl, bl
mov ebx, dword [ebp - 0x3bc]
jne 0x431c1d
mov edx, dword [ebx + edi*4]
xor eax, eax
mov ecx, edx
mov dword [ebp - 0x268], 0
mov dword [ebp - 0x264], 7
mov word [ebp - 0x278], ax
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x431a13
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x278]
call fcn.00402e30
lea eax, [ebp - 0x278]
mov byte [ebp - 4], 0x16
push eax
lea eax, [ebp - 0x290]
push eax
call fcn.0041c8b0
add esp, 8
mov esi, eax
push 1
xor eax, eax
mov byte [ebp - 4], 0x17
push 0x4ac7b4
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.00402e30
push esi
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 0x18
push eax
lea eax, [ebp - 0x260]
push eax
call fcn.004063b0
add esp, 0xc
cmp dword [eax + 0x14], 8
mov ecx, eax
mov byte [ebp - 4], 0x19
jb 0x431aa7
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x248]
call fcn.00402cb0
mov edx, dword [ebp - 0x24c]
mov byte [ebp - 4], 0x18
cmp edx, 8
jb 0x431afa
mov ecx, dword [ebp - 0x260]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431af0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f6a
push edx
push ecx
call fcn.0046c40b
add esp, 8
mov edx, dword [ebp - 0x21c]
xor eax, eax
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 7
mov word [ebp - 0x260], ax
mov byte [ebp - 4], 0x17
cmp edx, 8
jb 0x431b5b
mov ecx, dword [ebp - 0x230]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431b51
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f6a
push edx
push ecx
call fcn.0046c40b
add esp, 8
mov edx, dword [ebp - 0x27c]
xor eax, eax
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
mov byte [ebp - 4], 0x16
cmp edx, 8
jb 0x431bbc
mov ecx, dword [ebp - 0x290]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431bb2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f6a
push edx
push ecx
call fcn.0046c40b
add esp, 8
mov edx, dword [ebp - 0x264]
xor eax, eax
mov dword [ebp - 0x280], 0
mov dword [ebp - 0x27c], 7
mov word [ebp - 0x290], ax
mov byte [ebp - 4], 0x14
cmp edx, 8
jb 0x431c1d
mov ecx, dword [ebp - 0x278]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431c13
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f6a
push edx
push ecx
call fcn.0046c40b
add esp, 8
inc edi
cmp edi, dword [ebp - 0x3b8]
jl 0x431940
push ebx
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov edx, dword [ebp - 0x294]
mov byte [ebp - 4], 0xc
cmp edx, 8
jb 0x431c75
mov ecx, dword [ebp - 0x2a8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431c6b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f7e
push edx
push ecx
call fcn.0046c40b
add esp, 8
mov edi, dword [ebp - 0x234]
lea eax, [ebp - 0x248]
mov ebx, dword [ebp - 0x248]
cmp edi, 8
mov esi, dword [ebp - 0x238]
cmovae eax, ebx
test esi, esi
je 0x431cb1
lea ecx, [eax + esi*2]
mov edx, eax
cmp eax, ecx
jae 0x431cb1
cmp word [edx], 0x20
jne 0x431e26
add edx, 2
cmp edx, ecx
jb 0x431ca0
or edx, 0xffffffff
cmp esi, edx
lea ecx, [ebp - 0x248]
cmovb edx, esi
cmp edi, 8
cmovae ecx, ebx
sub esi, edx
mov dword [ebp - 0x238], esi
lea eax, [esi*2 + 2]
push eax
lea eax, [ecx + edx*2]
push eax
push ecx
call fcn.0046e870
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push str.enableetw
push eax
call fcn.0046f178
add esp, 8
test eax, eax
je 0x431d0c
push 0xb
push str.__enableetw
lea ecx, [ebp - 0x248]
call fcn.00402cb0
mov eax, dword [ebp - 0x2e0]
xor ecx, ecx
mov esi, dword [ebp - 0x238]
add eax, 4
add esi, eax
mov edx, 2
mov eax, esi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0046c419
cmp dword [ebp - 0x234], 8
lea edx, [ebp - 0x248]
lea ecx, [ebp - 0x2f0]
mov edi, eax
cmovae edx, dword [ebp - 0x248]
cmp dword [ebp - 0x2dc], 8
push edx
cmovae ecx, dword [ebp - 0x2f0]
push ecx
push str.__s___s
push esi
push edi
call fcn.0042d790
mov esi, dword [ebp - 0x3c0]
lea eax, [ebp - 0x404]
add esp, 0x18
push esi
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push edi
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
setne bl
cmp byte [0x4ddca0], 0
je 0x431e10
push 0
push 0
push 0x4ad120
push str.PrometheusCreateProcess
push 1
call fcn.004327e0
add esp, 0x14
cmp byte [0x4ddca0], 0
je 0x431e10
push 0xff
push str.PrometheusCreateProcess
call fcn.00432820
add esp, 8
cmp byte [0x4ddca0], 0
je 0x431e10
push 0
push 0
push 0x4ad120
push str.PrometheusClientMainWindowAdded
push 1
call fcn.004327c0
add esp, 0x14
cmp byte [0x4ddca0], 0
je 0x431e10
push 0xff
push str.PrometheusClientMainWindowAdded
call fcn.00432800
add esp, 8
push edi
call fcn.0046c422
add esp, 4
test bl, bl
jne 0x431e2f
mov dword [esi + 8], 0xffffffff
jmp 0x431e31
sub edx, eax
sar edx, 1
jmp 0x431cb4
mov bl, 1
mov edx, dword [ebp - 0x2c4]
cmp edx, 8
jb 0x431e71
mov ecx, dword [ebp - 0x2d8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431e67
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f83
push edx
push ecx
call fcn.0046c40b
add esp, 8
mov edx, dword [ebp - 0x2dc]
cmp edx, 8
jb 0x431eb1
mov ecx, dword [ebp - 0x2f0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431ea7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f83
push edx
push ecx
call fcn.0046c40b
add esp, 8
mov edx, dword [ebp - 0x2f4]
xor eax, eax
mov dword [ebp - 0x2e0], 0
mov dword [ebp - 0x2dc], 7
mov word [ebp - 0x2f0], ax
cmp edx, 8
jb 0x431f0e
mov ecx, dword [ebp - 0x308]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431f04
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f83
push edx
push ecx
call fcn.0046c40b
add esp, 8
mov edx, dword [ebp - 0x234]
cmp edx, 8
jb 0x431f4a
mov ecx, dword [ebp - 0x248]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x431f40
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x431f83
push edx
push ecx
call fcn.0046c40b
add esp, 8
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0046c678
mov esp, ebp
pop ebp
ret 0xc
call fcn.00477ce9
call fcn.00477ce9
call fcn.00477ce9
call fcn.00477ce9
call fcn.00477ce9
call fcn.00477ce9
int3