Function at 0x51b410
Capabilities:
Terminate process

Disassembly:
cmp dword [0x5188dc], 0
push ebx
push esi
push edi
push ebp
jne case.0x51baa3.0
mov esi, 4
mov edi, 0xfffffffc
mov ebx, 8
inc dword [0x5188dc]
mov eax, dword [0x5194ac]
mov ecx, dword [0x5194ac]
mov ax, word [eax]
mov word [0x5194b8], ax
mov dx, word [ecx + 2]
mov word [0x5194bc], dx
mov eax, dword [ecx + 4]
mov dword [0x5194b0], eax
add dword [0x5194ac], ebx
xor eax, eax
mov ax, word [0x5194b8]
cmp eax, 0x342
jg 0x51b485
je 0x51b63e
cmp eax, 0xe4
je 0x51b604
jmp 0x51b436
cmp eax, 0x704
jg 0x51b49f
je 0x51b6ab
cmp eax, 0x611
je 0x51b65a
jmp 0x51b436
cmp eax, 0x1092
jg 0x51b4bc
je 0x51b6df
cmp eax, 0x96f
je 0x51ba89
jmp 0x51b436
cmp eax, 0x1992
jg 0x51b4d9
je 0x51b72b
cmp eax, 0x1109
je 0x51b702
jmp 0x51b436
cmp eax, 0x2245
jg 0x51b4f6
je 0x51b76d
cmp eax, 0x1a44
je 0x51b754
jmp 0x51b436
cmp eax, 0x3345
jg 0x51b513
je 0x51b7b3
cmp eax, 0x22b7
je 0x51b790
jmp 0x51b436
cmp eax, 0x5211
jg 0x51b530
je 0x51b80a
cmp eax, 0x3dc8
je 0x51b7d6
jmp 0x51b436
cmp eax, 0x654d
jg 0x51b54d
je 0x51b82d
cmp eax, 0x5910
je 0x51b944
jmp 0x51b436
cmp eax, 0x698a
jg 0x51b56a
je 0x51b884
cmp eax, 0x65ab
je 0x51b850
jmp 0x51b436
cmp eax, 0x74bb
jg 0x51b587
je 0x51b8f2
cmp eax, 0x7123
je 0x51b8a1
jmp 0x51b436
cmp eax, 0x9104
jg 0x51b5a4
je 0x51b953
cmp eax, 0x8109
je 0x51b915
jmp 0x51b436
cmp eax, 0xaa61
jg 0x51b5c1
je 0x51b9af
cmp eax, 0x9b73
je 0x51b979
jmp 0x51b436
cmp eax, 0xba51
jg 0x51b5de
je 0x51ba0e
cmp eax, 0xb323
je 0x51b9e1
jmp 0x51b436
cmp eax, 0xbed7
je 0x51b931
cmp eax, 0xcd03
je 0x51ba29
cmp eax, 0xfb52
je 0x51ba57
jmp 0x51b436
mov ebp, dword [0x5194a8]
mov eax, dword [0x5194a8]
add ebp, 0x14
mov ecx, dword [eax]
push ecx
mov edx, dword [eax + 4]
push edx
mov ecx, dword [eax + 8]
push ecx
mov edx, dword [eax + 0xc]
push edx
mov ecx, dword [eax + 0x10]
push ecx
mov edx, dword [ebp]
push edx
call dword [0x5194b0]
mov dword [ebp], eax
add dword [0x5194a8], 0x14
jmp 0x51b436
mov eax, dword [0x5194b0]
xor ecx, ecx
mov cx, word [0x5194bc]
mov edx, dword [0x5194a8]
mov dword [edx + ecx*4], eax
jmp 0x51b436
xor eax, eax
mov ax, word [0x5194bc]
cmp eax, 0x68
je 0x51b670
cmp eax, 0x28e
je 0x51b67d
jmp 0x51b688
mov eax, dword [0x5194a8]
and dword [eax], 0xff
jmp 0x51b688
mov eax, dword [0x5194a8]
and dword [eax], 0xffff
mov eax, dword [0x5194a8]
add dword [0x5194a8], esi
cmp dword [eax], 0
je 0x51b436
mov eax, dword [0x5194b0]
mov dword [0x5194ac], eax
jmp 0x51b436
mov ax, word [0x5194bc]
mov ecx, dword [0x5194b0]
push eax
push ecx
call fcn.0051b360
mov cx, word [0x5194bc]
add esp, 8
inc eax
mov edx, dword [0x5194b0]
push eax
push ecx
push edx
call fcn.0051b300
add esp, 0xc
jmp 0x51b436
mov ax, word [0x5194bc]
mov ecx, dword [0x5194b0]
push eax
push ecx
call fcn.0051b360
add esp, 8
mov ecx, dword [0x5194a8]
add dword [ecx], eax
jmp 0x51b436
mov ebp, dword [0x5194a8]
mov eax, dword [0x5194a8]
add ebp, 4
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp]
push edx
call dword [0x5194b0]
mov dword [ebp], eax
add dword [0x5194a8], esi
jmp 0x51b436
mov dx, word [0x5194bc]
mov eax, dword [0x5194a8]
mov ecx, dword [eax]
mov eax, dword [0x5194b0]
push ecx
push edx
push eax
call fcn.0051b300
add esp, 0xc
add dword [0x5194a8], esi
jmp 0x51b436
add dword [0x5194a8], edi
call dword [0x5194b0]
mov ecx, dword [0x5194a8]
mov dword [ecx], eax
jmp 0x51b436
mov eax, dword [0x5194a8]
mov ecx, dword [eax]
xor eax, eax
mov ax, word [0x5194bc]
mov dword [0x5194ac], ecx
shl eax, 2
add dword [0x5194a8], eax
jmp 0x51b436
mov ax, word [0x5194bc]
mov ecx, dword [0x5194b0]
push eax
push ecx
call fcn.0051b360
add esp, 8
mov ecx, dword [0x5194a8]
sub dword [ecx], eax
jmp 0x51b436
mov ax, word [0x5194bc]
mov ecx, dword [0x5194b0]
push eax
push ecx
call fcn.0051b360
add esp, 8
mov ecx, dword [0x5194a8]
and dword [ecx], eax
jmp 0x51b436
mov ax, word [0x5194bc]
mov ecx, dword [0x5194b0]
push eax
push ecx
call fcn.0051b360
mov cx, word [0x5194bc]
add esp, 8
dec eax
mov edx, dword [0x5194b0]
push eax
push ecx
push edx
call fcn.0051b300
add esp, 0xc
jmp 0x51b436
mov dx, word [0x5194bc]
mov eax, dword [0x5194a8]
mov ecx, dword [eax]
mov eax, dword [0x5194b0]
push ecx
push edx
push eax
call fcn.0051b300
add esp, 0xc
jmp 0x51b436
mov ax, word [0x5194bc]
mov ecx, dword [0x5194b0]
push eax
push ecx
call fcn.0051b360
add esp, 8
mov ecx, dword [0x5194a8]
or dword [ecx], eax
jmp 0x51b436
mov eax, dword [0x5194a8]
xor ecx, ecx
mov cx, word [0x5194bc]
add dword [0x5194a8], esi
cmp ecx, dword [eax]
je 0x51b436
mov eax, dword [0x5194ac]
add dword [0x5194a8], edi
mov ecx, dword [0x5194a8]
mov dword [ecx], eax
jmp 0x51b436
mov ax, word [0x5194bc]
push 0
push eax
mov ecx, dword [0x5194b0]
push ecx
call fcn.0051b300
add esp, 0xc
jmp 0x51b436
xor eax, eax
mov ax, word [0x5194bc]
cmp eax, 0x68
je 0x51b8b7
cmp eax, 0x28e
je 0x51b8c4
jmp 0x51b8cf
mov eax, dword [0x5194a8]
and dword [eax], 0xff
jmp 0x51b8cf
mov eax, dword [0x5194a8]
and dword [eax], 0xffff
mov eax, dword [0x5194a8]
add dword [0x5194a8], esi
cmp dword [eax], 0
jne 0x51b436
mov eax, dword [0x5194b0]
mov dword [0x5194ac], eax
jmp 0x51b436
mov ax, word [0x5194bc]
mov ecx, dword [0x5194b0]
push eax
push ecx
call fcn.0051b360
add esp, 8
mov ecx, dword [0x5194a8]
xor dword [ecx], eax
jmp 0x51b436
mov eax, dword [0x5194a8]
xor ecx, ecx
mov cx, word [0x5194bc]
add dword [0x5194a8], esi
cmp ecx, dword [eax]
jne 0x51b436
mov eax, dword [0x5194ac]
add dword [0x5194a8], edi
mov ecx, dword [0x5194a8]
mov dword [ecx], eax
mov eax, dword [0x5194b0]
mov dword [0x5194ac], eax
jmp 0x51b436
mov ax, word [0x5194bc]
mov ecx, dword [0x5194b0]
push eax
push ecx
call fcn.0051b360
add esp, 8
mov ecx, dword [0x5194a8]
imul eax, dword [ecx]
mov dword [ecx], eax
jmp 0x51b436
mov ebp, dword [0x5194a8]
mov eax, dword [0x5194a8]
add ebp, 0x10
mov ecx, dword [eax]
push ecx
mov edx, dword [eax + 4]
push edx
mov ecx, dword [eax + 8]
push ecx
mov edx, dword [eax + 0xc]
push edx
mov ecx, dword [ebp]
push ecx
call dword [0x5194b0]
mov dword [ebp], eax
add dword [0x5194a8], 0x10
jmp 0x51b436
mov ebp, dword [0x5194a8]
mov eax, dword [0x5194a8]
add ebp, 0xc
mov ecx, dword [eax]
push ecx
mov edx, dword [eax + 4]
push edx
mov ecx, dword [eax + 8]
push ecx
mov edx, dword [ebp]
push edx
call dword [0x5194b0]
mov dword [ebp], eax
add dword [0x5194a8], 0xc
jmp 0x51b436
mov ebp, dword [0x5194a8]
mov eax, dword [0x5194a8]
add ebp, 8
mov ecx, dword [eax]
push ecx
mov edx, dword [eax + 4]
push edx
mov ecx, dword [ebp]
push ecx
call dword [0x5194b0]
mov dword [ebp], eax
add dword [0x5194a8], ebx
jmp 0x51b436
mov eax, dword [0x5194a8]
mov ecx, dword [eax]
push ecx
call dword [0x5194b0]
mov ecx, dword [0x5194a8]
mov dword [ecx], eax
jmp 0x51b436
mov ax, word [0x5194bc]
mov ecx, dword [0x5194b0]
push eax
push ecx
call fcn.0051b360
add dword [0x5194a8], edi
mov ecx, dword [0x5194a8]
add esp, 8
mov dword [0x5194b0], eax
mov dword [ecx], eax
jmp 0x51b436
mov cx, word [0x5194bc]
mov eax, dword [0x5194a8]
push ecx
mov ebp, dword [eax]
mov eax, dword [0x5194b0]
push eax
call fcn.0051b360
add esp, 8
mov ecx, eax
mov eax, ebp
sub edx, edx
div ecx
mov edx, dword [0x5194a8]
mov dword [edx], eax
jmp 0x51b436
xor eax, eax
mov ax, word [0x5194bc]
mov dword [0x5189c4], eax
cmp eax, 8
ja case.0x51baa3.4
xor ecx, ecx
mov cl, byte [eax + 0x51bb20]
jmp dword [ecx*4 + 0x51bb0c]
mov dword [0x5189c4], 2
and word [0x518004], 0xfffe
push 0x2010
call section.0000009
push eax
call fcn.0051bc80
add esp, 8
test byte [0x518004], 1
jne 0x51bae5
mov eax, dword [0x5189c4]
push eax
call dword [sym.imp.KERNEL32.dll_ExitProcess]
xor eax, eax
pop ebp
pop edi
pop esi
pop ebx
ret 0xc
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
push eax
push ecx
push edx
call dword [0x5188cc]
pop ebp
pop edi
pop esi
pop ebx
ret 0xc