Function at 0x40a260
Capabilities:
Terminate process

Disassembly:
push 0x4f4
mov eax, 0x413a57
call fcn.00412542
mov ebx, dword [ebp + 0xc]
mov dword [ebp - 0x4d0], ebx
call fcn.0040ec74
call fcn.0040b382
mov esi, 0x4171b0
mov ecx, esi
call fcn.00406a8d
lea ecx, [ebp - 0x4fc]
call fcn.00405bcc
xor edi, edi
mov dword [ebp - 4], edi
push 0x200
lea eax, [ebp - 0x49c]
push eax
lea ecx, [ebp - 0x4ac]
call fcn.00406423
mov byte [ebp - 4], 1
push 0x403414
lea ecx, [ebp - 0x4ac]
call fcn.0040b565
mov byte [ebp - 4], 2
cmp dword [ebp + 8], edi
jle 0x40a2f6
push dword [ebx + edi*4]
lea ecx, [ebp - 0x4ac]
call fcn.004065a8
push 0x40159c
lea ecx, [ebp - 0x4ac]
call fcn.004065a8
inc edi
cmp edi, dword [ebp + 8]
jl 0x40a2d2
push 0x403410
lea ecx, [ebp - 0x4ac]
call fcn.004065a8
lea ecx, [ebp - 0x4ac]
call fcn.0040b958
push dword [ebp - 0x4a0]
mov ecx, esi
call fcn.00406d09
mov edi, dword [ebp + 8]
lea esi, [ebx + 4]
push esi
dec edi
push edi
call fcn.0040a19e
test al, al
je 0x40a357
xor esi, esi
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x4ac]
call fcn.0040631d
or dword [ebp - 4], 0xffffffff
push dword [ebp - 0x4fc]
call fcn.0040a9fc
mov eax, esi
jmp 0x40a72c
push esi
push edi
lea ecx, [ebp - 0x4fc]
call fcn.004075d7
lea ecx, [ebp - 0x4fc]
mov esi, eax
call fcn.00407112
xor ebx, ebx
cmp esi, ebx
je 0x40a38b
call fcn.004070da
cmp esi, ebx
jge 0x40a388
push 0xffffffffffffffff
call dword [sym.imp.MSVCR80.dll_exit]
push ebx
jmp 0x40a382
xor edi, edi
cmp dword [ebp - 0x4f8], edi
mov dword [ebp - 0x4c8], ebx
mov dword [ebp - 0x4b0], ebx
mov dword [ebp - 0x4b8], ebx
jbe 0x40a442
mov eax, dword [ebp - 0x4fc]
lea esi, [eax + ebx*4]
mov ecx, dword [esi]
mov eax, ecx
lea edx, [eax + 2]
mov di, word [eax]
inc eax
inc eax
test di, di
jne 0x40a3bb
sub eax, edx
sar eax, 1
cmp eax, 4
jle 0x40a40f
lea eax, [ecx + eax*2 - 8]
push 0x401610
push eax
call dword [sym.imp.MSVCR80.dll__wcsicmp]
test eax, eax
pop ecx
pop ecx
jne 0x40a40f
cmp dword [ebp - 0x4b8], eax
jne 0x40a41a
lea eax, [ebp - 0x4c8]
push eax
push 0x3f
lea eax, [ebp - 0x90]
push eax
push dword [esi]
call sub.mscoree.dll_GetRequestedRuntimeVersion
test eax, eax
jl 0x40a40f
mov eax, dword [esi]
mov dword [ebp - 0x4b8], eax
inc ebx
cmp ebx, dword [ebp - 0x4f8]
jb 0x40a3ab
jmp 0x40a438
push 0x403188
call fcn.00406fa8
push 0x403148
call fcn.00406fa8
push 0x403114
call fcn.00406fa8
xor edi, edi
cmp dword [ebp - 0x4b8], edi
jne 0x40a460
push 0xc627
push edi
push 2
push 0x4033fc
lea eax, [ebp - 0x90]
push 0x40
push eax
call fcn.00405920
add esp, 0x18
cmp byte [ebp - 0x4df], 0
je 0x40a482
lea eax, [ebp - 0x90]
push eax
push 0x403378
call fcn.00407077
pop ecx
pop ecx
push edi
jmp 0x40a382
push edi
mov eax, 0x405708
push eax
push eax
push 0x110
push edi
lea eax, [ebp - 0x90]
push eax
call sub.mscoree.dll_CorBindToRuntimeEx
push 1
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
lea eax, [ebp - 0x4cc]
push eax
push 0x104
lea eax, [ebp - 0x29c]
push eax
mov dword [ebp - 0x4cc], edi
call sub.mscoree.dll_GetCORVersion
cmp eax, edi
mov esi, 0x403364
jl 0x40a568
mov ecx, 0x403350
lea eax, [ebp - 0x29c]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x40a500
cmp dx, di
je 0x40a4fc
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x40a500
add eax, 4
add ecx, 4
cmp dx, di
jne 0x40a4da
xor eax, eax
jmp 0x40a505
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x40a568
mov ecx, esi
lea eax, [ebp - 0x29c]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x40a537
cmp dx, di
je 0x40a533
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x40a537
add eax, 4
add ecx, 4
cmp dx, di
jne 0x40a511
xor eax, eax
jmp 0x40a53c
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
je 0x40a568
lea eax, [ebp - 0x4b0]
push eax
push dword [ebp - 0x4b8]
lea eax, [ebp - 0x4fc]
push eax
call fcn.0040986c
test eax, eax
je 0x40a568
mov esi, dword [ebp - 0x4b0]
jmp 0x40a332
mov ecx, esi
lea eax, [ebp - 0x90]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x40a596
cmp dx, di
je 0x40a592
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x40a596
add eax, 4
add ecx, 4
cmp dx, di
jne 0x40a570
xor eax, eax
jmp 0x40a59b
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
jne 0x40a5c5
lea eax, [ebp - 0x500]
push eax
push edi
push edi
push 0x403334
call sub.mscoree.dll_LoadLibraryShim
test eax, eax
jge 0x40a5c5
push 0x403314
call fcn.00406fa8
jmp 0x40a380
lea eax, [ebp - 0x4b4]
push eax
push 0x403300
mov dword [ebp - 0x4b4], edi
mov dword [ebp - 0x4c0], edi
mov dword [ebp - 0x4bc], edi
mov dword [ebp - 0x4c4], edi
call sub.mscoree.dll_GetRealProcAddress
mov esi, eax
cmp esi, edi
jl 0x40a627
lea eax, [ebp - 0x4c0]
push eax
push 0x4032e4
call sub.mscoree.dll_GetRealProcAddress
lea eax, [ebp - 0x4bc]
push eax
push 0x4032d8
call sub.mscoree.dll_GetRealProcAddress
lea eax, [ebp - 0x4c4]
push eax
push 0x4032c8
call sub.mscoree.dll_GetRealProcAddress
cmp dword [ebp - 0x4b4], edi
jne 0x40a681
lea eax, [ebp - 0x4b4]
push eax
push 0x4032b0
call sub.mscoree.dll_GetRealProcAddress
mov esi, eax
cmp esi, edi
jl 0x40a679
lea eax, [ebp - 0x4c0]
push eax
push 0x40328c
call sub.mscoree.dll_GetRealProcAddress
lea eax, [ebp - 0x4bc]
push eax
push 0x403278
call sub.mscoree.dll_GetRealProcAddress
lea eax, [ebp - 0x4c4]
push eax
push 0x403260
call sub.mscoree.dll_GetRealProcAddress
cmp dword [ebp - 0x4b4], edi
je 0x40a6cb
cmp dword [ebp - 0x4c0], edi
je 0x40a6cb
cmp dword [ebp - 0x4bc], edi
je 0x40a6cb
cmp dword [ebp - 0x4c4], edi
je 0x40a6cb
push dword [ebp - 0x4c4]
lea eax, [ebp - 0x4fc]
push dword [ebp - 0x4bc]
push dword [ebp - 0x4c0]
push dword [ebp - 0x4b4]
push dword [ebp - 0x4b8]
push eax
call fcn.0040712c
mov dword [ebp - 0x4b0], eax
jmp 0x40a708
cmp esi, 0x80131701
jne 0x40a6ea
lea eax, [ebp - 0x4fc]
push eax
push dword [ebp - 0x4d0]
push dword [ebp + 8]
call fcn.00405c87
mov esi, eax
cmp esi, edi
jge 0x40a708
lea eax, [ebp - 0x90]
push eax
push 0x4031e8
call fcn.00407077
or dword [ebp - 0x4b0], 0xffffffff
pop ecx
pop ecx
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x4ac]
call fcn.0040631d
or dword [ebp - 4], 0xffffffff
push dword [ebp - 0x4fc]
call fcn.0040a9fc
mov eax, dword [ebp - 0x4b0]
pop ecx
call fcn.004125c5
ret 8