Function at 0x1003d0b8
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x80
push ebx
push esi
push edi
mov edi, edx
mov esi, ecx
cmp byte [edi], 0x50
jne 0x1003d41f
cmp byte [edi + 1], 0x4b
jne 0x1003d41f
mov cl, byte [edi + 3]
xor ebx, ebx
movzx esi, byte [edi + 2]
mov dword [ebp - 0xc], 0x61928c17
add esi, 4
mov dword [ebp - 0x20], 0xfffffffe
mov byte [ebp - 5], bl
mov byte [ebp - 6], cl
mov dword [ebp - 0x28], esi
cmp byte [ebp - 5], bl
je 0x1003d10b
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetExitCodeThread]
mov dword [ebp - 0xc], 0xffffffed
jmp 0x1003d165
mov dword [ebp - 0x24], 1
mov dword [ebp - 0x10], ebx
jmp 0x1003d12e
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x34], 0xfffffffc
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x1003d120
mov dword [ebp - 0x34], ebx
jmp 0x1003d15c
mov eax, dword [ebp - 0x34]
add eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0xc]
push 0
pop edx
setns dl
xor ecx, ecx
cmp edx, eax
setg cl
cmp ecx, 4
sbb eax, eax
neg eax
mov dword [ebp - 0x20], eax
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0x19
je 0x1003d139
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xfffffffe
jle 0x1003d114
push 2
lea ecx, [ebp - 0x4c]
call fcn.1000a704
mov dword [ebp - 0x10], 0xdf1febae
mov dword [ebp - 0x10], ebx
jmp 0x1003d191
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x4c]
mov dword [eax + ecx*4], 7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1003d181
mov dword [ebp - 0x10], 1
cmp dword [ebp - 0x10], ebx
jl 0x1003d1b3
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x4c]
cmp dword [eax + ecx*4], ebx
jne 0x1003d1b3
dec dword [ebp - 0x10]
jns 0x1003d1a3
lea ecx, [ebp - 0x4c]
call fcn.1000a787
movzx eax, byte [ebp - 6]
add eax, 0x18
mov dword [ebp - 0x20], 0xbca6
add eax, esi
mov byte [ebp - 6], bl
mov dword [ebp - 0x24], eax
cmp byte [ebp - 6], bl
je 0x1003d1dc
call dword [sym.imp.USER32.dll_GetCapture]
mov byte [ebp - 6], bl
cmp byte [ebp - 6], bl
je 0x1003d1ef
push ebx
push ebx
push 1
push ebx
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov ecx, dword [esi + edi + 0x14]
mov edx, dword [esi + edi]
call fcn.1000de49
push dword [ebp - 0x28]
mov dword [ebp - 0x18], eax
lea ecx, [ebp - 0x40]
mov eax, dword [ebp - 0x24]
xorps xmm0, xmm0
add eax, edi
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x7c]
mov dword [ebp - 0x3c], ebx
push eax
push ebx
movdqu xmmword [ebp - 0x7c], xmm0
mov dword [ebp - 0x38], ebx
call fcn.1000d2d6
mov dword [ebp - 0xc], 0x4a276ac1
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x10], ebx
jmp 0x1003d248
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x5c], 0xffffffff
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x1003d23a
cmp dword [ebp - 0x54], ebx
jne 0x1003d2b0
mov eax, dword [ebp - 0x54]
xor edx, edx
mov ecx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x54]
cmp ecx, eax
mov eax, dword [ebp - 0x54]
setne dl
xor ecx, ecx
imul eax, edx
mov edx, dword [ebp - 0x54]
imul edx, eax
mov eax, dword [ebp - 0x40]
mov esi, dword [eax + 8]
mov eax, dword [ebp - 0x5c]
cmp edx, eax
setl cl
xor eax, eax
cmp ecx, esi
setne al
xor edx, edx
cmp eax, esi
mov eax, dword [ebp - 0x54]
setge dl
xor ecx, ecx
cmp edx, eax
setne cl
cmp dword [ebp - 0x54], ecx
jl 0x1003d29f
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x40]
cmp dword [eax], ebx
jne 0x1003d2b0
mov ecx, ebx
jmp 0x1003d2b3
xor ecx, ecx
inc ecx
xor eax, eax
cmp ecx, 0x800f4d4e
setne al
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x24], 0xfffffffd
mov dword [ebp - 0xc], ebx
jmp 0x1003d2e7
mov dword [ebp - 0x24], 3
mov dword [ebp - 0x1c], 0x5c7d8169
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x1c], eax
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0xa
jne 0x1003d2d0
lea ecx, [ebp - 0x40]
call fcn.1000a787
mov eax, dword [ebp + 8]
mov esi, dword [ebp - 0x18]
push 7
mov dword [eax], esi
pop eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x1c], 0x6f8f9ed0
mov dword [ebp - 0x18], 0x534a2c93
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0xb72b416c
mov dword [ebp - 0xc], 0xffffffea
jmp 0x1003d3c9
mov dword [ebp - 0x18], 0xfffc
mov dword [ebp - 0x10], 0x7fd1e814
mov dword [ebp - 0x14], ebx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x18], ebx
je 0x1003d367
mov eax, dword [ebp - 0x14]
xor ecx, ecx
cmp eax, 0x2092
setge cl
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
dec eax
je 0x1003d367
xor eax, eax
inc eax
jmp 0x1003d369
mov eax, ebx
cmp eax, dword [ebp - 0xc]
je 0x1003d371
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0xc]
je 0x1003d383
cmp dword [ebp - 0x1c], ebx
je 0x1003d383
xor eax, eax
inc eax
jmp 0x1003d385
mov eax, ebx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
sub ecx, 0xdedc87a9
neg ecx
sbb ecx, ecx
add eax, 0x688
inc ecx
xor edx, edx
add ecx, eax
mov eax, dword [ebp - 0x14]
cmp ecx, eax
setne dl
cmp edx, dword [ebp - 0x14]
jl 0x1003d3c3
cmp dword [ebp - 0x18], ebx
je 0x1003d3c3
xor eax, eax
inc eax
mov dword [ebp - 0x24], eax
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0x12
jge 0x1003d327
mov ecx, dword [ebp - 0x28]
shr esi, 2
mov eax, dword [ecx + edi]
mov dword [ebp - 0x6c], eax
mov eax, dword [ecx + edi + 4]
mov dword [ebp - 0x68], eax
mov eax, dword [ecx + edi + 8]
mov dword [ebp - 0x64], eax
mov eax, dword [ecx + edi + 0xc]
mov dword [ebp - 0x60], eax
inc esi
je 0x1003d451
mov ecx, dword [ebp - 0x20]
sub edi, ecx
mov ecx, dword [ecx]
mov edx, ebx
and edx, 3
mov edx, dword [ebp + edx*4 - 0x6c]
call fcn.1000de49
mov ecx, dword [ebp - 0x20]
mov dword [edi + ecx], eax
add ecx, 4
inc ebx
mov dword [ebp - 0x20], ecx
cmp ebx, esi
jb 0x1003d3fc
jmp 0x1003d451
xor ebx, ebx
mov dword [ebp - 0x28], 9
mov byte [ebp - 6], bl
cmp byte [ebp - 6], bl
je 0x1003d43c
push 0x9a6
push ebx
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov byte [ebp - 6], bl
cmp byte [ebp - 6], bl
je 0x1003d44c
push ebx
push ebx
call dword [sym.imp.USER32.dll_CharUpperBuffW]
mov eax, dword [ebp + 8]
mov dword [eax], esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret