Function at 0x10029910
Capabilities:
Check mutex on windows
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1013a159
mov eax, dword fs:[0]
push eax
sub esp, 0x3c0
mov eax, dword [0x10187468]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x138], eax
lea ecx, [eax + 8]
mov al, byte [ecx]
test al, al
je 0x10029956
xor eax, eax
jmp 0x1002a53e
mov al, 1
xchg byte [ecx], al
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
xor eax, eax
mov dword [ebp - 0x28], 0x750070
mov word [ebp - 0x170], ax
lea ecx, [ebp - 0x170]
push 0xb
lea eax, [ebp - 0x28]
mov dword [ebp - 0x24], 0x680073
push eax
mov dword [ebp - 0x20], 0x70005f
mov dword [ebp - 0x1c], 0x2e0070
mov dword [ebp - 0x18], 0x6f006c
mov dword [ebp - 0x14], 0x67
mov dword [ebp - 0x160], 0
mov dword [ebp - 0x15c], 7
call fcn.10009e50
cmp dword [ebp - 0x15c], 8
lea eax, [ebp - 0x170]
mov dword [ebp - 4], 0
cmovae eax, dword [ebp - 0x170]
push eax
call fcn.100111d0
mov edx, dword [ebp - 0x15c]
add esp, 4
mov dword [ebp - 4], 0xffffffff
cmp edx, 8
jb 0x10029a25
mov ecx, dword [ebp - 0x170]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029a1b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a55b
push edx
push ecx
call fcn.100c522c
add esp, 8
push str.GlobalEF41D595_DB8B_4CF6_BDC7_81FD55C5551E
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov dword [0x1018ef04], eax
test eax, eax
je 0x10029b30
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x10029b30
call fcn.100352e0
push 1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
mov ecx, eax
call edx
movzx eax, al
sub eax, 1
jne 0x1002a523
push 0x52
push str.d:jenkins.jenkinsworkspacemgamepushapp_tpipushotherselves_trayclientimpl.cpp
lea ecx, [ebp - 0x1a0]
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], al
call fcn.1000eb30
push 3
push 0x10145c60
lea ecx, [ebp - 0x188]
mov dword [ebp - 4], 1
mov dword [ebp - 0x178], 0
mov dword [ebp - 0x174], 0xf
mov byte [ebp - 0x188], 0
call fcn.1000eb30
push 0x33
lea eax, [ebp - 0x1a0]
mov byte [ebp - 4], 2
push eax
lea eax, [ebp - 0x188]
push eax
lea ecx, [ebp - 0x334]
call fcn.1000a940
mov esi, eax
push str.has_other_process_is_working
push esi
mov byte [ebp - 4], 3
call fcn.1000b4f0
add esp, 8
call fcn.100352e0
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x1c]
lea ecx, [ebp - 0x334]
call fcn.1000bd60
lea ecx, [ebp - 0x188]
call fcn.1000b120
lea ecx, [ebp - 0x1a0]
call fcn.1000b120
jmp 0x1002a523
lea eax, [ebp - 0xb4]
mov dword [ebp - 0xb4], 0
push eax
call fcn.10010ce0
add esp, 4
mov dword [ebp - 4], 4
mov dword [ebp - 0xac], 0
mov byte [ebp - 4], 5
call fcn.10006e10
mov ecx, eax
test ecx, ecx
je 0x1002a560
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0xac], eax
mov esi, dword [ebp - 0xb4]
lea eax, [ebp - 0x1ec]
push eax
lea ecx, [ebp - 0xc9]
mov byte [ebp - 4], 6
call fcn.10029080
cmp dword [eax + 0x14], 8
mov byte [ebp - 4], 7
jb 0x10029ba5
mov eax, dword [eax]
push str.store
push esi
push eax
lea eax, [ebp - 0xac]
push eax
call fcn.10006d20
mov edx, dword [ebp - 0x1d8]
add esp, 0x10
mov byte [ebp - 4], 6
cmp edx, 8
jb 0x10029bff
mov ecx, dword [ebp - 0x1ec]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10029bf5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a56a
push edx
push ecx
call fcn.100c522c
add esp, 8
push 0
lea eax, [ebp - 0xac]
mov dword [ebp - 0xb0], 0
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.10009580
add esp, 0xc
mov ecx, dword [0x1018e89c]
mov esi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov byte [ebp - 4], 8
test ecx, ecx
jne 0x10029c95
push 0x1018700c
call esi
cmp dword [0x1018e89c], 0
jne 0x10029c88
push 4
call fcn.100c51fc
add esp, 4
mov dword [ebp - 0xec], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x10029c72
mov ecx, eax
mov dword [eax], 0
call fcn.10036c20
jmp 0x10029c74
xor eax, eax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xb8]
xor edx, edx
lock or dword [ecx], edx
mov dword [0x1018e89c], eax
push 0x1018700c
call edi
mov ecx, dword [0x1018e89c]
push dword [ebp - 0xb0]
push str.market_tc
push 1
call fcn.10036ca0
mov ecx, dword [0x1018e89c]
test ecx, ecx
jne 0x10029d0b
push 0x1018700c
call esi
cmp dword [0x1018e89c], 0
jne 0x10029cfe
push 4
call fcn.100c51fc
add esp, 4
mov dword [ebp - 0xb8], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x10029ce8
mov ecx, eax
mov dword [eax], 0
call fcn.10036c20
jmp 0x10029cea
xor eax, eax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xbc]
xor edx, edx
lock or dword [ecx], edx
mov dword [0x1018e89c], eax
push 0x1018700c
call edi
mov ecx, dword [0x1018e89c]
push 0
push 0
push 1
push 0
push 0x10147304
call fcn.10036cc0
mov ecx, dword [0x1018e8b0]
test ecx, ecx
jne 0x10029db2
push 0x10187028
call esi
cmp dword [0x1018e8b0], 0
jne 0x10029da5
push 0x1c
call fcn.100c51fc
add esp, 4
mov dword [ebp - 0xbc], eax
test eax, eax
je 0x10029d93
xorps xmm0, xmm0
movups xmmword [eax], xmm0
movq qword [eax + 0x10], xmm0
mov dword [eax + 0x18], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0
mov dword [eax + 0x18], 0
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
mov dword [eax + 0xc], 0
jmp 0x10029d95
xor eax, eax
xor edx, edx
lea ecx, [ebp - 0xc0]
lock or dword [ecx], edx
mov dword [0x1018e8b0], eax
push 0x10187028
call edi
mov ecx, dword [0x1018e8b0]
push 1
call fcn.10029580
test eax, eax
je 0x1002a36f
call fcn.100352e0
push 1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
mov ecx, eax
call edx
movzx eax, al
mov edi, 0xffffffff
sub eax, 1
jne 0x1002a169
push 0x52
push str.d:jenkins.jenkinsworkspacemgamepushapp_tpipushotherselves_trayclientimpl.cpp
lea ecx, [ebp - 0x134]
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x120], 0xf
mov byte [ebp - 0x134], 0
call fcn.1000eb30
push 3
push 0x10145c60
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x108], 0xf
mov byte [ebp - 0x11c], 0
call fcn.1000eb30
push 1
push 2
lea ecx, [ebp - 0x29c]
mov byte [ebp - 4], 0xc
call fcn.1000a7c0
push edi
push 0x10145d1c
lea ecx, [ebp - 0x134]
mov byte [ebp - 4], 0xd
call fcn.1000f6a0
push edi
push 0x10145d20
lea ecx, [ebp - 0x134]
mov dword [ebp - 0xc8], eax
call fcn.1000f6a0
push 0x64
mov esi, eax
lea eax, [ebp - 0xa8]
push 0
push eax
call fcn.10109d00
add esp, 0xc
cmp esi, edi
je 0x10029f8a
mov ecx, dword [ebp - 0xc8]
lea eax, [esi - 1]
cmp ecx, eax
jae 0x10029f8a
mov eax, dword [ebp - 0x124]
lea edx, [ecx + 1]
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xf0], 0xf
mov byte [ebp - 0x104], 0
cmp eax, edx
jb 0x1002a56f
sub esi, ecx
sub eax, edx
lea ecx, [esi - 1]
cmp eax, ecx
cmovb ecx, eax
cmp dword [ebp - 0x120], 0x10
lea eax, [ebp - 0x134]
cmovae eax, dword [ebp - 0x134]
push ecx
add eax, edx
lea ecx, [ebp - 0x104]
push eax
call fcn.1000eb30
cmp dword [ebp - 0xf0], 0x10
lea eax, [ebp - 0x104]
cmovae eax, dword [ebp - 0x104]
push eax
push 0x43
lea eax, [ebp - 0xa8]
push str.__4d___s_
push eax
call fcn.1000a790
mov edx, dword [ebp - 0xf0]
add esp, 0x10
cmp edx, 0x10
jb 0x10029f6d
mov ecx, dword [ebp - 0x104]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10029f63
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a574
push edx
push ecx
call fcn.100c522c
add esp, 8
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xf0], 0xf
mov byte [ebp - 0x104], 0
jmp 0x10029fa0
push 0x43
lea eax, [ebp - 0xa8]
push str.__4d_
push eax
call fcn.1000a790
add esp, 0xc
cmp dword [ebp - 0x108], 0x10
lea eax, [ebp - 0x11c]
cmovae eax, dword [ebp - 0x11c]
push eax
lea eax, [ebp - 0x29c]
push eax
call fcn.1000b4f0
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x29c]
push eax
call fcn.1000b4f0
add esp, 0x10
xor eax, eax
mov byte [ebp - 4], 0xe
mov dword [ebp - 0xe8], 0x6e0069
mov dword [ebp - 0xe4], 0x200074
mov dword [ebp - 0xe0], 0x65006e
mov dword [ebp - 0xdc], 0x200074
mov dword [ebp - 0xd8], 0x750073
mov dword [ebp - 0xd4], 0x630063
mov word [ebp - 0xd0], ax
call fcn.10006e10
mov ecx, eax
test ecx, ecx
je 0x1002a579
mov eax, dword [ecx]
push 2
push 0xc
mov eax, dword [eax]
call eax
mov dword [ebp - 0xc8], eax
test eax, eax
je 0x1002a583
add eax, 0x10
cmp dword [eax - 8], 0xc
mov dword [ebp - 0xec], eax
lea esi, [eax - 0x10]
jl 0x1002a592
xor ecx, ecx
mov dword [esi + 4], 0xc
mov word [eax + 0x18], cx
lea ecx, [ebp - 0xe8]
push 0x18
push ecx
push 0x18
push eax
call fcn.1000a030
mov ecx, dword [ebp - 0xc8]
mov eax, str._null_
add ecx, 0x10
mov byte [ebp - 4], 0xf
cmovne eax, ecx
push eax
lea eax, [ebp - 0x29c]
push eax
call fcn.1000a140
add esp, 0x18
call fcn.100352e0
lea ecx, [ebp - 0x29c]
push ecx
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x1c]
mov eax, edi
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x1002a0c7
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x29c]
call fcn.1000bd60
mov edx, dword [ebp - 0x108]
mov byte [ebp - 4], 0xb
cmp edx, 0x10
jb 0x1002a110
mov ecx, dword [ebp - 0x11c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a106
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a588
push edx
push ecx
call fcn.100c522c
add esp, 8
mov edx, dword [ebp - 0x120]
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x108], 0xf
mov byte [ebp - 0x11c], 0
mov byte [ebp - 4], 8
cmp edx, 0x10
jb 0x1002a169
mov ecx, dword [ebp - 0x134]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a15f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a58d
push edx
push ecx
call fcn.100c522c
add esp, 8
mov esi, dword [0x1018e89c]
test esi, esi
jne 0x1002a1d0
push 0x1018700c
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [0x1018e89c], esi
jne 0x1002a1bf
push 4
call fcn.100c51fc
add esp, 4
mov dword [ebp - 0xc0], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x1002a1a9
mov ecx, eax
mov dword [eax], esi
call fcn.10036c20
jmp 0x1002a1ab
xor eax, eax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xc4]
xor edx, edx
lock or dword [ecx], edx
mov dword [0x1018e89c], eax
push 0x1018700c
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, dword [0x1018e89c]
xor eax, eax
mov dword [ebp - 0x44], 0x65006e
mov word [ebp - 0x2c], ax
lea ecx, [ebp - 0x150]
mov dword [ebp - 0x140], eax
mov word [ebp - 0x150], ax
lea eax, [ebp - 0x44]
push 0xc
push eax
mov dword [ebp - 0x40], 0x5f0074
mov dword [ebp - 0x3c], 0x6e0069
mov dword [ebp - 0x38], 0x740069
mov dword [ebp - 0x34], 0x73005f
mov dword [ebp - 0x30], 0x630075
mov dword [ebp - 0x13c], 7
call fcn.10009e50
cmp dword [ebp - 0x13c], 8
lea eax, [ebp - 0x150]
push 0
cmovae eax, dword [ebp - 0x150]
mov ecx, esi
push 0
push 1
push 0
push eax
mov byte [ebp - 4], 0x11
call fcn.10036cc0
mov edx, dword [ebp - 0x13c]
mov byte [ebp - 4], 8
cmp edx, 8
jb 0x1002a294
mov ecx, dword [ebp - 0x150]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1002a28a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002a59c
push edx
push ecx
call fcn.100c522c
add esp, 8
mov esi, dword [ebp - 0x138]
push 8
mov dword [ebp - 0x158], 0x100293e0
mov dword [ebp - 0x154], esi
call fcn.100c51fc
add esp, 4
mov dword [ebp - 0xc4], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x1002a2d2
lea ecx, [ebp - 0x158]
push ecx
mov ecx, eax
call fcn.10028e20
jmp 0x1002a2d4
xor eax, eax
lea edx, [esi + 0xc]
lea ecx, [ebp - 0x1d4]
cmp edx, ecx
je 0x1002a2f8
mov ecx, dword [edx]
mov dword [edx], eax
test ecx, ecx
je 0x1002a311
cmp dword [ecx + 4], 0
jne 0x1002a5a1
push 8
push ecx
jmp 0x1002a309
test eax, eax
je 0x1002a311
cmp dword [eax + 4], 0
jne 0x1002a5a6
push 8
push eax
call fcn.100c522c
add esp, 8
mov edx, dword [ebp - 0xb0]
mov eax, edi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1002a32e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xac]
mov eax, edi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1002a34b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xb4]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], edi
dec edi
test edi, edi
jg 0x1002a539
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x1002a539
call fcn.100352e0
push 1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
mov ecx, eax
call edx
movzx eax, al
mov edi, 0xffffffff
sub eax, 1
jne 0x1002a48e
push 0x52
push str.d:jenkins.jenkinsworkspacemgamepushapp_tpipushotherselves_trayclientimpl.cpp
lea ecx, [ebp - 0x1d0]
mov dword [ebp - 0x1c0], 0
mov dword [ebp - 0x1bc], 0xf
mov byte [ebp - 0x1d0], 0
call fcn.1000eb30
push 3
push 0x10145c60
lea ecx, [ebp - 0x1b8]
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1a4], 0xf
mov byte [ebp - 0x1b8], 0
call fcn.1000eb30
push 0x48
lea eax, [ebp - 0x1d0]
mov byte [ebp - 4], 0x13
push eax
lea eax, [ebp - 0x1b8]
push eax
lea ecx, [ebp - 0x3cc]
call fcn.1000a940
mov esi, eax
lea eax, [ebp - 0xc8]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0xca]
call fcn.100292c0
mov eax, dword [eax]
mov ecx, str._null_
test eax, eax
mov byte [ebp - 4], 0x15
cmovne ecx, eax
push ecx
push esi
call fcn.1000a140
add esp, 8
call fcn.100352e0
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x1c]
mov edx, dword [ebp - 0xc8]
mov eax, edi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1002a469
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [ebp - 0x3cc]
call fcn.1000bd60
lea ecx, [ebp - 0x1b8]
call fcn.1000b120
lea ecx, [ebp - 0x1d0]
mov byte [ebp - 4], 8
call fcn.1000b120
call fcn.1000d9b0
mov esi, eax
lea ecx, [ebp - 0xcb]
lea eax, [ebp - 0x204]
push eax
call fcn.10029360
cmp dword [eax + 0x14], 8
mov byte [ebp - 4], 0x16
jb 0x1002a4b3
mov eax, dword [eax]
push 0
push 0
push 1
push 0
push eax
mov ecx, esi
call fcn.10036cc0
lea ecx, [ebp - 0x204]
call fcn.100089e0
mov edx, dword [ebp - 0xb0]
mov eax, edi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1002a4eb
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xac]
mov eax, edi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x1002a508
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0xb4]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], edi
dec edi
test edi, edi
jg 0x1002a523
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [0x1018ef04]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [0x1018ef04], 0
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100c55ab
mov esp, ebp
pop ebp
ret 4
call fcn.1010d560
push 0x80004005
call fcn.10006b70
call fcn.1010d560
call fcn.1000e710
call fcn.1010d560
push 0x80004005
call fcn.10006b70
call fcn.10008530
call fcn.1010d560
call fcn.1010d560
push 0x80070057
call fcn.10006b70
call fcn.1010d560
call fcn.10111ceb
call fcn.10111ceb
int3