Function at 0x4125b9
Capabilities:
Terminate process

Disassembly:
sub esp, 0x29c
mov eax, dword [0x452cb0]
xor eax, esp
mov dword [esp + 0x298], eax
push ebx
push ebp
mov ebp, dword [esp + 0x2b4]
push esi
xor esi, esi
xor ebx, ebx
push edi
mov word [0x457388], si
movsx ecx, si
lea eax, [ecx + ecx]
cmp eax, 0x64
jae 0x412ac5
xor edx, edx
and dword [ecx*4 + 0x457640], edx
mov word [eax + 0x457520], dx
cmp eax, 0x64
jae 0x412ac5
mov word [eax + 0x4573a0], dx
cmp eax, 0x64
jae 0x412ac5
mov word [eax + 0x4574a0], dx
imul eax, ecx, 3
push 0x43af08
add eax, 0x4575a0
push eax
call fcn.00415fb0
movsx eax, bx
imul edi, eax, 7
pop ecx
pop ecx
cmp byte [edi + 0x4adb68], 0
jne 0x41264d
mov byte [edi + 0x4adb68], 0x20
mov al, byte [edi + 0x4adb68]
mov byte [esp + 0x13], al
lea eax, [edi + 0x4adb64]
push 4
push eax
call fcn.00410f61
mov si, word [0x457388]
pop ecx
pop ecx
push 0x32
pop ecx
movzx eax, ax
mov dword [esp + 0x14], eax
cmp si, cx
jge 0x412720
cmp byte [esp + 0x13], 0x20
je 0x412720
push ebp
push dword [esp + 0x2bc]
push eax
call fcn.0040514b
add esp, 0xc
cmp eax, 1
jne 0x412719
movsx ecx, word [0x457388]
mov eax, dword [esp + 0x14]
mov word [ecx*2 + 0x457520], ax
mov eax, dword [esp + 0x2b4]
mov dword [ecx*4 + 0x457640], eax
mov al, byte [esp + 0x13]
cbw
mov word [ecx*2 + 0x4573a0], ax
mov al, byte [edi + 0x4adb69]
imul ecx, ecx, 3
lea edx, [ecx + 0x4575a0]
mov byte [edx], al
mov al, byte [edi + 0x4adb6a]
mov byte [ecx + 0x4575a1], al
push edx
mov byte [ecx + 0x4575a2], 0
call fcn.004119f7
mov si, word [0x457388]
pop ecx
movsx ecx, si
inc si
mov word [0x457388], si
mov word [ecx*2 + 0x4574a0], ax
jmp 0x412720
mov si, word [0x457388]
push 7
inc ebx
pop eax
cmp bx, ax
jle 0x4125e3
cmp byte [0x4adb99], 0x20
mov edi, dword [esp + 0x2bc]
mov ebx, dword [esp + 0x2b4]
je 0x41276f
movsx eax, si
push eax
movsx eax, di
push eax
mov eax, dword [esp + 0x2c0]
cwde
push eax
push ebx
push dword [esp + 0x2c0]
call fcn.00412405
mov si, ax
add esp, 0x14
mov word [0x457388], si
mov eax, 0x5a0
cmp di, ax
jle 0x412a84
push 0xd8
call fcn.00419225
mov ebp, eax
pop ecx
test ebp, ebp
je 0x412aa9
push 0xc8
lea eax, [esp + 0x20]
movsx esi, si
push 0x457640
sub edi, 0x5a0
push eax
mov dword [esp + 0x2c8], edi
call fcn.00419ca0
push 0x64
lea eax, [esp + 0xf4]
push 0x457520
push eax
call fcn.00419ca0
push 0x64
lea eax, [esp + 0x1c8]
push 0x4574a0
push eax
call fcn.00419ca0
push 0x64
lea eax, [esp + 0x170]
push 0x4573a0
push eax
call fcn.00419ca0
push 0x96
lea eax, [esp + 0x244]
push 0x4575a0
push eax
call fcn.00419ca0
push 0xd7
push 0x4adb60
push ebp
call fcn.00419ca0
add esp, 0x48
push 1
push ebx
call fcn.00404b3e
push eax
push dword [esp + 0x2bc]
call fcn.00411ea7
xor eax, eax
mov word [0x457388], si
add esp, 0x10
xor ebx, ebx
cmp ax, si
jge 0x4128aa
movsx ecx, bx
mov ax, word [esp + ecx*2 + 0xe4]
mov word [ecx*2 + 0x457520], ax
mov eax, dword [esp + ecx*4 + 0x1c]
mov dword [ecx*4 + 0x457640], eax
mov ax, word [esp + ecx*2 + 0x148]
mov word [ecx*2 + 0x4573a0], ax
mov ax, word [esp + ecx*2 + 0x1ac]
mov word [ecx*2 + 0x4574a0], ax
lea eax, [esp + 0x210]
imul ecx, ecx, 3
add eax, ecx
push eax
lea eax, [ecx + 0x4575a0]
push eax
call fcn.00415fb0
mov si, word [0x457388]
inc ebx
pop ecx
pop ecx
cmp bx, si
jl 0x412844
xor ebx, ebx
jmp 0x412a1b
push 7
pop eax
cmp bx, ax
jg 0x412a2b
movsx ecx, si
lea eax, [ecx + ecx]
cmp eax, 0x64
jae 0x412ac5
xor edx, edx
and dword [ecx*4 + 0x457640], edx
mov word [eax + 0x457520], dx
cmp eax, 0x64
jae 0x412ac5
mov word [eax + 0x4573a0], dx
cmp eax, 0x64
jae 0x412ac5
mov word [eax + 0x4574a0], dx
imul eax, ecx, 3
push 0x43af08
add eax, 0x4575a0
push eax
call fcn.00415fb0
movsx eax, bx
imul ebx, eax, 7
pop ecx
pop ecx
cmp byte [ebx + 0x4adb68], 0
jne 0x412927
mov byte [ebx + 0x4adb68], 0x20
mov al, byte [ebx + 0x4adb68]
mov byte [esp + 0x13], al
lea eax, [ebx + 0x4adb64]
push 4
push eax
call fcn.00410f61
mov si, word [0x457388]
pop ecx
pop ecx
push 0x32
pop ecx
movzx eax, ax
mov dword [esp + 0x18], eax
cmp si, cx
jge 0x412a16
cmp byte [esp + 0x13], 0x20
je 0x412a16
push edi
push 0
push eax
call fcn.0040514b
add esp, 0xc
cmp eax, 1
jne 0x412a0f
movsx eax, word [0x457388]
mov edx, dword [esp + 0x18]
movsx esi, word [0x457388]
push 1
push dword [esp + 0x2b8]
mov word [eax*2 + 0x457520], dx
call fcn.00404b3e
mov dword [esi*4 + 0x457640], eax
lea edi, [ebx + 0x4adb69]
mov al, byte [esp + 0x1b]
cbw
push 2
mov word [esi*2 + 0x4573a0], ax
movsx esi, word [0x457388]
push edi
call fcn.00410f61
imul ecx, esi, 3
add esp, 0x10
mov word [esi*2 + 0x4574a0], ax
mov al, byte [edi]
mov si, word [0x457388]
mov edi, dword [esp + 0x2bc]
inc si
mov word [0x457388], si
mov byte [ecx + 0x4575a0], al
mov al, byte [ebx + 0x4adb6a]
mov byte [ecx + 0x4575a1], al
mov byte [ecx + 0x4575a2], 0
jmp 0x412a16
mov si, word [0x457388]
mov ebx, dword [esp + 0x14]
inc ebx
push 0x32
pop eax
mov dword [esp + 0x14], ebx
cmp si, ax
jl 0x4128b1
cmp byte [0x4adb99], 0x20
je 0x412a64
movsx eax, si
push eax
movsx eax, di
push eax
push 0
push 1
push dword [esp + 0x2c4]
call fcn.00404b3e
pop ecx
pop ecx
push eax
push dword [esp + 0x2c0]
call fcn.00412405
add esp, 0x14
mov word [0x457388], ax
push 0xd7
push ebp
push 0x4adb60
call fcn.00419ca0
push ebp
call fcn.004191ed
mov si, word [0x457388]
add esp, 0x10
mov ecx, dword [esp + 0x2a8]
dec si
pop edi
mov word [0x457388], si
movsx eax, si
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004161e8
add esp, 0x29c
ret
push str.HELP_cant_get_MEM_in_rgetreg____n
call fcn.00415bc7
add eax, 0x40
push eax
call fcn.00415d7c
pop ecx
pop ecx
push 0xffffffffffffffff
call fcn.0041670b
call fcn.004169d8
int3