Function at 0xb2e630
Capabilities:
Terminate process

Disassembly:
mov eax, dword [0xb2bf40]
test eax, eax
jne case.0xb2ebb4.0
mov dword [0xb2bf40], 1
xor eax, eax
push eax
mov dword [eax*4 + 0xb2c100], 0
call fcn.00b2edc0
add esp, 4
cmp eax, 0x64
jl 0xb2e649
push ebp
push esi
push 0xb2c0e0
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
push 0xb2bf00
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov eax, dword [0xb2bec8]
mov ebp, dword [0xb2becc]
mov cx, word [ebp]
add ebp, 8
mov word [0xb2c0d8], cx
mov si, word [ebp - 6]
mov ecx, dword [0xb2c0d8]
mov word [0xb2c0da], si
mov edx, dword [ebp - 4]
and ecx, 0xffff
cmp ecx, 0x5910
mov dword [0xb2c0d0], edx
mov dword [0xb2becc], ebp
jg 0xb2e902
je 0xb2eb38
cmp ecx, 0x1992
jg 0xb2e835
je 0xb2e816
cmp ecx, 0x704
jg 0xb2e7be
je 0xb2e79a
cmp ecx, 0xe4
je 0xb2e766
cmp ecx, 0x342
je 0xb2e759
cmp ecx, 0x611
jne 0xb2e67f
xor ecx, ecx
mov cx, si
cmp ecx, 0x68
je 0xb2e727
cmp ecx, 0x28e
jne 0xb2e73c
mov ecx, dword [eax]
and ecx, 0xffff
jmp 0xb2e72f
mov ecx, dword [eax]
and ecx, 0xff
mov dword [eax], ecx
mov edx, dword [0xb2c0d0]
mov eax, dword [0xb2bec8]
mov ecx, dword [eax]
add eax, 4
test ecx, ecx
mov dword [0xb2bec8], eax
je 0xb2e67f
mov dword [0xb2becc], edx
jmp 0xb2e67f
xor ecx, ecx
mov cx, si
mov dword [eax + ecx*4], edx
jmp 0xb2e67a
mov ecx, dword [eax]
push ecx
mov ecx, dword [eax + 4]
push ecx
mov ecx, dword [eax + 8]
push ecx
mov ecx, dword [eax + 0xc]
push ecx
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
push ecx
push eax
call edx
mov ecx, dword [0xb2bec8]
mov dword [ecx + 0x14], eax
mov eax, dword [0xb2bec8]
add eax, 0x14
mov dword [0xb2bec8], eax
jmp 0xb2e67f
push esi
push edx
call fcn.00b2e550
mov dx, word [0xb2c0da]
inc eax
push eax
mov eax, dword [0xb2c0d0]
push edx
push eax
call fcn.00b2e4f0
add esp, 0x14
jmp 0xb2e67a
sub ecx, 0x96f
je 0xb2eb9b
sub ecx, 0x723
je 0xb2e7ff
sub ecx, 0x77
jne 0xb2e67f
mov ecx, dword [eax]
mov eax, dword [eax + 4]
push ecx
push eax
call edx
mov ecx, dword [0xb2bec8]
mov dword [ecx + 4], eax
mov eax, dword [0xb2bec8]
add eax, 4
mov dword [0xb2bec8], eax
jmp 0xb2e67f
push esi
push edx
call fcn.00b2e550
mov ecx, dword [0xb2bec8]
add esp, 8
add dword [ecx], eax
jmp 0xb2e67a
mov eax, dword [eax]
push eax
push esi
push edx
call fcn.00b2e4f0
mov eax, dword [0xb2bec8]
add esp, 0xc
add eax, 4
mov dword [0xb2bec8], eax
jmp 0xb2e67f
cmp ecx, 0x3345
jg 0xb2e8b7
je 0xb2e8a0
sub ecx, 0x1a44
je 0xb2e889
sub ecx, 0x801
je 0xb2e86f
sub ecx, 0x72
jne 0xb2e67f
push esi
push edx
call fcn.00b2e550
mov ecx, dword [0xb2bec8]
add esp, 8
sub dword [ecx], eax
jmp 0xb2e67a
mov ecx, dword [eax]
xor edx, edx
mov dx, si
mov dword [0xb2becc], ecx
lea eax, [eax + edx*4]
mov dword [0xb2bec8], eax
jmp 0xb2e67f
sub eax, 4
mov dword [0xb2bec8], eax
call edx
mov ecx, dword [0xb2bec8]
mov dword [ecx], eax
jmp 0xb2e67a
push esi
push edx
call fcn.00b2e550
mov ecx, dword [0xb2bec8]
add esp, 8
and dword [ecx], eax
jmp 0xb2e67a
cmp ecx, 0x3dc8
je 0xb2e8dd
cmp ecx, 0x5211
jne 0xb2e67f
mov eax, dword [eax]
push eax
push esi
push edx
call fcn.00b2e4f0
add esp, 0xc
jmp 0xb2e67a
push esi
push edx
call fcn.00b2e550
mov cx, word [0xb2c0da]
mov edx, dword [0xb2c0d0]
dec eax
push eax
push ecx
push edx
call fcn.00b2e4f0
add esp, 0x14
jmp 0xb2e67a
cmp ecx, 0x9b73
jg 0xb2ea8f
je 0xb2ea5f
cmp ecx, 0x7123
jg 0xb2e9e1
je 0xb2e993
sub ecx, 0x654d
je 0xb2e97c
sub ecx, 0x5e
je 0xb2e94c
sub ecx, 0x3df
jne 0xb2e67f
push 0
push esi
push edx
call fcn.00b2e4f0
add esp, 0xc
jmp 0xb2e67a
mov edx, dword [eax]
xor ecx, ecx
mov cx, si
add eax, 4
cmp edx, ecx
mov dword [0xb2bec8], eax
je 0xb2e67f
sub eax, 4
mov dword [0xb2bec8], eax
mov dword [eax], ebp
mov eax, dword [0xb2c0d0]
mov dword [0xb2becc], eax
jmp 0xb2e67a
push esi
push edx
call fcn.00b2e550
mov ecx, dword [0xb2bec8]
add esp, 8
or dword [ecx], eax
jmp 0xb2e67a
xor ecx, ecx
mov cx, si
cmp ecx, 0x68
je 0xb2e9af
cmp ecx, 0x28e
jne 0xb2e9c4
mov ecx, dword [eax]
and ecx, 0xffff
jmp 0xb2e9b7
mov ecx, dword [eax]
and ecx, 0xff
mov dword [eax], ecx
mov edx, dword [0xb2c0d0]
mov eax, dword [0xb2bec8]
mov ecx, dword [eax]
add eax, 4
test ecx, ecx
mov dword [0xb2bec8], eax
jne 0xb2e67f
mov dword [0xb2becc], edx
jmp 0xb2e67f
cmp ecx, 0x74bb
je 0xb2ea48
cmp ecx, 0x8109
je 0xb2ea18
cmp ecx, 0x9104
jne 0xb2e67f
push esi
push edx
call fcn.00b2e550
mov edx, eax
mov eax, dword [0xb2bec8]
add esp, 8
imul edx, dword [eax]
mov dword [eax], edx
jmp 0xb2e67a
mov edx, dword [eax]
xor ecx, ecx
mov cx, si
add eax, 4
cmp edx, ecx
mov dword [0xb2bec8], eax
jne 0xb2e67f
sub eax, 4
mov dword [0xb2bec8], eax
mov dword [eax], ebp
mov eax, dword [0xb2c0d0]
mov dword [0xb2becc], eax
jmp 0xb2e67a
push esi
push edx
call fcn.00b2e550
mov ecx, dword [0xb2bec8]
add esp, 8
xor dword [ecx], eax
jmp 0xb2e67a
mov ecx, dword [eax]
push ecx
mov ecx, dword [eax + 4]
push ecx
mov ecx, dword [eax + 8]
push ecx
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
push ecx
push eax
call edx
mov ecx, dword [0xb2bec8]
mov dword [ecx + 0x10], eax
mov eax, dword [0xb2bec8]
add eax, 0x10
mov dword [0xb2bec8], eax
jmp 0xb2e67f
cmp ecx, 0xbed7
jg 0xb2eb43
je 0xb2eb23
cmp ecx, 0xaa61
je 0xb2eaf7
cmp ecx, 0xb323
je 0xb2eacf
cmp ecx, 0xba51
jne 0xb2e67f
mov eax, dword [eax]
push eax
call edx
mov ecx, dword [0xb2bec8]
mov dword [ecx], eax
jmp 0xb2e67a
mov ecx, dword [eax]
push ecx
mov ecx, dword [eax + 4]
mov eax, dword [eax + 8]
push ecx
push eax
call edx
mov ecx, dword [0xb2bec8]
mov dword [ecx + 8], eax
mov eax, dword [0xb2bec8]
add eax, 8
mov dword [0xb2bec8], eax
jmp 0xb2e67f
mov ecx, dword [eax]
push ecx
mov ecx, dword [eax + 4]
push ecx
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
push ecx
push eax
call edx
mov ecx, dword [0xb2bec8]
mov dword [ecx + 0xc], eax
mov eax, dword [0xb2bec8]
add eax, 0xc
mov dword [0xb2bec8], eax
jmp 0xb2e67f
sub eax, 4
mov dword [0xb2bec8], eax
mov dword [eax], ebp
mov edx, dword [0xb2c0d0]
mov eax, dword [0xb2bec8]
mov dword [0xb2becc], edx
jmp 0xb2e67f
cmp ecx, 0xcd03
je 0xb2eb76
cmp ecx, 0xfb52
jne 0xb2e67f
push esi
push edx
call fcn.00b2e550
mov ecx, dword [0xb2bec8]
mov esi, eax
xor edx, edx
add esp, 8
mov eax, dword [ecx]
div esi
mov dword [ecx], eax
jmp 0xb2e67a
push esi
push edx
call fcn.00b2e550
mov ecx, dword [0xb2bec8]
add esp, 8
sub ecx, 4
mov dword [0xb2c0d0], eax
mov dword [0xb2bec8], ecx
mov dword [ecx], eax
jmp 0xb2e67a
xor eax, eax
mov ax, si
pop esi
cmp eax, 0xd
mov dword [0xb2c02c], eax
pop ebp
ja case.0xb2ebb4.4
xor edx, edx
mov dl, byte [eax + 0xb2ec30]
jmp dword [edx*4 + 0xb2ec1c]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 4]
push eax
push ecx
push edx
call dword [0xb2bce4]
ret 0xc
push 1
call dword [sym.imp.MSVCRT.dll_exit]
mov dword [0xb2c02c], 2
and word [0xb2b004], 0xfffe
push 0x2010
call section.0000009
push eax
call fcn.00b2edd0
mov al, byte [0xb2b004]
add esp, 8
test al, 1
jne 0xb2ec16
mov eax, dword [0xb2c02c]
push eax
call dword [sym.imp.KERNEL32.dll_ExitProcess]
xor eax, eax
ret 0xc