Function at 0x406190
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
mov ebx, ecx
mov ecx, dword [ebp + 0xc]
push edi
mov edi, edx
test ecx, ecx
je 0x4064eb
mov esi, dword [ebp + 8]
nop dword [eax + eax]
cmp edi, esi
je 0x4064eb
mov eax, dword [esi]
shl eax, 8
or eax, dword [edi]
cmp eax, 0x200
jle 0x4062aa
cmp eax, 0x400
jg 0x40622a
je 0x406384
sub eax, 0x201
cmp eax, 4
ja case.0x4061e5.515
jmp dword [eax*4 + 0x4064f4]
mov edx, dword [esi + 4]
shl edx, 5
add edx, dword [ebx + 4]
mov eax, dword [edx + 8]
mov eax, dword [eax]
cmp eax, 6
je 0x406217
cmp eax, 5
je 0x406217
push 1
mov ecx, ebx
call fcn.00405ef0
mov ecx, dword [ebp + 0xc]
add esp, 4
mov esi, eax
jmp 0x4061b0
push 1
mov ecx, ebx
call fcn.00405e40
mov ecx, dword [ebp + 0xc]
add esp, 4
mov esi, eax
jmp 0x4061b0
cmp eax, 0x500
jg 0x40623e
je 0x406384
sub eax, 0x402
jmp 0x40624c
sub eax, 0x501
je case.0x4061e5.513
sub eax, 1
je case.0x4061e5.514
sub eax, 3
jne case.0x4061e5.515
cmp ecx, 8
mov ecx, ebx
jne 0x406285
mov edx, 1
call fcn.00405b50
push 0
push esi
push eax
mov edx, 0x1d
mov dword [ebp - 4], eax
mov ecx, ebx
call fcn.004043b0
mov esi, dword [ebp - 4]
add esp, 0xc
mov ecx, dword [ebp + 0xc]
jmp 0x4061b0
xor edx, edx
call fcn.00405b50
push dword [ebp + 0xc]
mov edx, eax
mov dword [ebp - 4], eax
push esi
mov ecx, ebx
call fcn.00406190
mov esi, dword [ebp - 4]
add esp, 8
mov ecx, dword [ebp + 0xc]
jmp 0x4061b0
je 0x406384
cmp eax, 5
jg 0x406316
cmp eax, 4
jge 0x406384
sub eax, 0
je 0x406384
sub eax, 2
je 0x406384
mov eax, dword [esi]
push dword [eax*4 + 0x413f30]
mov eax, dword [edi]
push dword [eax*4 + 0x413f30]
push str.copy__s__s__n
call fcn.00401010
add esp, 0xc
push 0x4ad
push 0
push str.JIT_ERROR__d__jit.c_line__d__n
call fcn.00401010
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
je 0x40630e
int3
push 0xffffffffffffffff
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
cmp eax, 0x101
jl case.0x4061e5.515
cmp eax, 0x102
jle case.0x4061e5.513
cmp eax, 0x105
jne case.0x4061e5.515
cmp ecx, 4
je 0x406362
cmp ecx, 8
je 0x40635b
push 0x478
push ecx
push str.JIT_ERROR__d__jit.c_line__d__n
call fcn.00401010
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
je 0x406353
int3
push 0xffffffffffffffff
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
mov edx, 0x1d
jmp 0x406367
mov edx, 0x1e
push 0
push esi
push edi
mov ecx, ebx
call fcn.004043b0
add esp, 0xc
cmp dword [edi], 1
cmove esi, edi
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ecx - 1]
cmp eax, 7
ja case.0x406390.3
jmp dword [eax*4 + 0x406508]
cmp dword [edi], 0
jne 0x406425
push 0
push edi
push edi
mov edx, 0xe
mov ecx, ebx
call fcn.004043b0
add esp, 0xc
mov ecx, edi
call fcn.00404380
test al, al
jne 0x406480
push 0
push esi
push edi
mov edx, 0x35
mov ecx, ebx
call fcn.004043b0
add esp, 0xc
mov dword [ebp - 0x14], 3
lea eax, [ebp - 0x14]
mov dword [ebp - 8], 0
mov edx, 0x12
mov dword [ebp - 0x10], 0x18
mov ecx, ebx
push 0
push eax
push edi
call fcn.004043b0
add esp, 0xc
mov dword [ebp - 0x14], 3
lea eax, [ebp - 0x14]
mov dword [ebp - 8], 0
mov dword [ebp - 0x10], 0x18
mov edx, 0x13
push 0
push eax
jmp 0x4064ab
mov ecx, esi
call fcn.00404380
test al, al
jne 0x406480
mov edx, 9
mov ecx, ebx
call fcn.00405b50
push 0
push esi
push eax
xor edx, edx
mov dword [ebp + 0xc], eax
mov ecx, ebx
call fcn.004043b0
mov eax, dword [ebp + 0xc]
add esp, 0xc
mov ecx, dword [eax + 8]
cmp ecx, dword [ebx + 0x1a4]
jne 0x406464
mov dword [eax + 8], 0
push 0
push eax
push edi
mov edx, 0x32
mov ecx, ebx
call fcn.004043b0
add esp, 0xc
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, 0x32
jmp 0x4064a8
cmp dword [edi], 0
jne 0x40649f
push 0
push edi
push edi
mov edx, 0xe
mov ecx, ebx
call fcn.004043b0
add esp, 0xc
mov edx, 0x35
jmp 0x4064a8
xor edx, edx
push 0
push esi
push edi
mov ecx, ebx
call fcn.004043b0
add esp, 0xc
cmp dword [edi], 0
cmove esi, edi
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x468
push ecx
push str.JIT_ERROR__d__jit.c_line__d__n
call fcn.00401010
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
je 0x4064e3
int3
push 0xffffffffffffffff
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret