Function at 0x10031fe
Capabilities:
Terminate process

Disassembly:
push ebp
lea ebp, [esp - 0x8c]
sub esp, 0x10c
mov eax, dword [0x100a2cc]
push ebx
push esi
push edi
xor edi, edi
mov dword [ebp + 0x88], eax
mov eax, dword [ebp + 0x94]
inc edi
test eax, eax
mov dword [ebp - 0x80], edi
je 0x1003682
cmp byte [eax], 0
je 0x1003682
mov ebx, eax
cmp dword [ebp - 0x80], 0
je 0x10032fd
mov eax, ebx
mov cl, byte [eax]
cmp cl, 0x20
je 0x1003265
cmp cl, 9
je 0x1003265
cmp cl, 0xd
je 0x1003265
cmp cl, 0xa
je 0x1003265
cmp cl, 0xb
je 0x1003265
cmp cl, 0xc
jne 0x100326e
push eax
call dword [sym.imp.USER32.dll_CharNextA]
jmp 0x1003245
cmp byte [eax], 0
je 0x10032fd
xor ecx, ecx
xor edx, edx
mov ebx, eax
xor esi, esi
test edx, edx
jne 0x100329f
mov al, byte [ebx]
cmp al, 0x20
je 0x10032ec
cmp al, 9
je 0x10032ec
cmp al, 0xd
je 0x10032ec
cmp al, 0xa
je 0x10032ec
cmp al, 0xb
je 0x10032ec
cmp al, 0xc
je 0x10032ec
jmp 0x10032a3
test esi, esi
jne 0x10032ec
mov al, byte [ebx]
cmp al, 0x22
jne 0x10032d5
lea eax, [ebx + 1]
cmp byte [eax], 0x22
je 0x10032bf
test edx, edx
jne 0x10032b9
mov edx, edi
jmp 0x10032bb
mov esi, edi
mov ebx, eax
jmp 0x10032e7
cmp ecx, 0x103
jae 0x10035b0
mov byte [ebp + ecx - 0x7c], 0x22
inc ecx
inc ebx
inc ebx
jmp 0x10032e7
cmp ecx, 0x103
jae 0x10035b0
mov byte [ebp + ecx - 0x7c], al
inc ecx
inc ebx
cmp byte [ebx], 0
jne 0x100327f
test edx, edx
mov byte [ebp + ecx - 0x7c], 0
je 0x1003347
test esi, esi
jne 0x100334b
and dword [ebp - 0x80], 0
cmp dword [0x100b88c], 0
je 0x100367d
cmp byte [0x100b99e], 0
jne 0x100367d
push 0x104
mov esi, 0x100b99e
push esi
push dword [0x100b4a4]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x1003679
push 0x5c
push esi
call fcn.01005fea
mov byte [eax + 1], 0
jmp 0x100367d
test esi, esi
jne 0x10032f9
cmp byte [ebp - 0x7c], 0x2f
je 0x100335b
cmp byte [ebp - 0x7c], 0x2d
jne 0x10035b0
movsx eax, byte [ebp - 0x7b]
mov esi, dword [sym.imp.USER32.dll_CharUpperA]
push eax
call esi
movsx eax, al
sub eax, 0x3f
je 0x100365c
sub eax, 4
je 0x10035b7
dec eax
je 0x100351e
sub eax, 0xa
je 0x10034b4
push 3
pop ecx
sub eax, ecx
je 0x1003473
dec eax
je 0x10033b5
dec eax
dec eax
je 0x100351e
and dword [ebp - 0x80], 0
cmp byte [ebx], 0
jne 0x1003239
jmp 0x10032fd
cmp byte [ebp - 0x7a], 0
jne 0x10033c9
mov dword [0x100b48c], ecx
mov dword [0x100b888], edi
jmp 0x10033a7
cmp byte [ebp - 0x7a], 0x3a
jne 0x1003457
cmp byte [ebp - 0x79], 0
mov dword [0x100b48c], edi
je 0x10033a7
lea esi, [ebp - 0x79]
movsx eax, byte [esi]
push eax
call dword [sym.imp.USER32.dll_CharUpperA]
movsx eax, al
inc esi
sub eax, 0x41
je 0x1003440
sub eax, 3
je 0x1003437
sub eax, 5
je 0x100342e
sub eax, 5
je 0x1003425
dec eax
dec eax
je 0x100341c
sub eax, 3
je 0x1003413
and dword [ebp - 0x80], 0
jmp 0x100344d
or dword [0x100b48c], 4
jmp 0x1003447
or byte [0x100bba8], 0x80
jmp 0x100344d
and dword [0x100b48c], 0xfffffffe
jmp 0x1003447
and dword [0x100b48c], 0xfffffffd
jmp 0x1003447
or dword [0x100bba8], 0x40
jmp 0x100344d
or dword [0x100b48c], 2
mov dword [0x100b888], edi
cmp byte [esi], 0
jne 0x10033e2
jmp 0x10033a7
lea eax, [ebp - 0x7b]
push eax
push 0x1001374
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10033a7
jmp 0x10033a3
cmp byte [ebp - 0x7a], 0
je 0x100349a
cmp byte [ebp - 0x7a], 0x3a
jne 0x10033a3
movsx eax, byte [ebp - 0x79]
push eax
call esi
cmp al, 0x31
je 0x100349a
cmp al, 0x41
je 0x10034a8
cmp al, 0x55
jne 0x10033a3
mov word [0x100b898], 2
jmp 0x10033a7
mov word [0x100b898], di
jmp 0x10033a7
cmp byte [ebp - 0x7a], 0
jne 0x10034c5
mov dword [0x100b88c], edi
jmp 0x10033a7
cmp byte [ebp - 0x7a], 0x3a
jne 0x10033a3
cmp byte [ebp - 0x79], 0
je 0x10033a7
lea esi, [ebp - 0x79]
movsx eax, byte [esi]
push eax
call dword [sym.imp.USER32.dll_CharUpperA]
movsx eax, al
inc esi
sub eax, 0x45
je 0x100350e
dec eax
dec eax
je 0x1003506
sub eax, 0xf
je 0x10034fe
and dword [ebp - 0x80], 0
jmp 0x1003514
mov dword [0x100b894], edi
jmp 0x1003514
mov dword [0x100b890], edi
jmp 0x1003514
mov dword [0x100b88c], edi
cmp byte [esi], 0
jne 0x10034dc
jmp 0x10033a7
cmp byte [ebp - 0x7a], 0x3a
jne 0x10033a3
xor eax, eax
cmp byte [ebp - 0x79], 0x22
sete al
add eax, 3
mov esi, eax
lea edi, [ebp + esi - 0x7c]
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
je 0x1003636
lea eax, [ebp + 0x94]
push eax
push edi
mov dword [ebp + 0x94], esi
call fcn.01003182
test eax, eax
je 0x1003636
movsx eax, byte [ebp - 0x7b]
push eax
call dword [sym.imp.USER32.dll_CharUpperA]
cmp al, 0x54
mov eax, dword [ebp + 0x94]
jne 0x1003582
add eax, esi
mov esi, 0x100b99e
jmp 0x1003589
add eax, esi
mov esi, 0x100b89a
lea eax, [ebp + eax - 0x7c]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x1001271
push esi
call fcn.01005f34
mov eax, esi
push eax
call fcn.0100298d
test eax, eax
jne 0x100363a
xor eax, eax
jmp 0x1003684
cmp byte [ebp - 0x7a], 0
jne 0x10035c8
mov dword [0x100b884], edi
jmp 0x10033a7
cmp byte [ebp - 0x7a], 0x3a
jne 0x10033a3
xor eax, eax
cmp byte [ebp - 0x79], 0x22
sete al
add eax, 3
mov esi, eax
lea edi, [ebp + esi - 0x7c]
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
je 0x1003636
push 0x5b
push edi
call fcn.01005f02
test eax, eax
je 0x1003607
push 0x5d
push edi
call fcn.01005f02
test eax, eax
je 0x1003636
push 0x5d
push edi
call fcn.01005f02
test eax, eax
je 0x100361f
push 0x5b
push edi
call fcn.01005f02
test eax, eax
je 0x1003636
lea eax, [ebp + 0x94]
push eax
push edi
mov dword [ebp + 0x94], esi
call fcn.01003182
test eax, eax
jne 0x1003642
and dword [ebp - 0x80], 0
xor edi, edi
inc edi
jmp 0x10033a7
mov eax, dword [ebp + 0x94]
add eax, esi
lea eax, [ebp + eax - 0x7c]
push eax
push 0x100baa2
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x100363a
call fcn.0100190a
mov eax, dword [0x100aa54]
test eax, eax
je 0x1003671
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
and dword [ebp - 0x80], 0
mov eax, dword [ebp - 0x80]
jmp 0x1003684
mov eax, edi
mov ecx, dword [ebp + 0x88]
pop edi
pop esi
pop ebx
call fcn.01005e37
add ebp, 0x8c
leave
ret 4