Function at 0x4ad230
Capabilities:
Create process on windows
Create process suspended

Disassembly:
sub esp, 0xac
push ebp
push esi
mov esi, dword [esp + 0xb8]
cmp esi, 0x3e8
mov ebp, ecx
jne 0x4ad256
pop esi
mov al, 1
pop ebp
add esp, 0xac
ret 4
mov ecx, dword [ebp + 0x440]
lea eax, [ecx - 1]
cmp eax, 0x8d
push edi
ja case.0x4ad26b.3
jmp dword [eax*4 + 0x4ae4cc]
push esi
mov ecx, ebp
call fcn.004ab610
push esi
mov ecx, ebp
call fcn.004ab5f0
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004ab630
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004ab630
push esi
mov ecx, ebp
call fcn.004ab5f0
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
dec esi
je 0x4ad2f8
dec esi
jne 0x4ae4bc
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
mov esi, dword [ebp + 0x444]
cmp esi, 5
mov ecx, dword [0x77fd08]
jne 0x4ad323
call fcn.0056c930
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
call fcn.0056c110
call fcn.00411930
test eax, eax
je 0x4ad355
mov eax, dword [0x77e1ac]
test eax, eax
je 0x4ad355
mov al, byte [eax + 0x7b4]
mov byte [esp + 0xc], al
mov ecx, dword [esp + 0xc]
push ecx
call fcn.00411930
mov ecx, eax
call fcn.0041a060
push 0
call fcn.00411ea0
mov eax, esi
add esp, 4
sub eax, 2
je 0x4ad40c
dec eax
je 0x4ad391
dec eax
jne case.0x4ad26b.58
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push 0x44
lea edx, [esp + 0x48]
push 0
push edx
call fcn.0065c670
push 0x10
lea eax, [esp + 0x28]
push 0
push eax
mov dword [esp + 0x5c], 0x44
call fcn.0065c670
add esp, 0x18
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x48]
push edx
push 0
push 0
push 0
push 0
push 0
push 0
push str.PatchUpdate.exe
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
mov eax, dword [esp + 0x18]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push eax
call esi
mov ecx, dword [esp + 0x1c]
push ecx
call esi
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
mov ecx, dword [0x77db4c]
mov edx, dword [ecx]
call dword [edx + 4]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
dec esi
jne case.0x4ad26b.3
mov ecx, dword [ebp + 0x444]
push 0
call fcn.004b6f80
jmp case.0x4ad26b.3
dec esi
je 0x4ad454
dec esi
jne 0x4ad5f7
jmp case.0x4ad26b.3
call fcn.0040f9e0
pop edi
pop esi
mov al, 1
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004ac120
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004abf30
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ab6c0
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac790
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac830
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac8d0
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac970
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac010
jmp case.0x4ad26b.3
mov eax, dword [0x77e1f8]
test eax, eax
je case.0x4ad26b.3
add eax, 0xc58
push 0x20
push eax
lea eax, [esp + 0x52]
push eax
mov byte [esp + 0x50], 0xe
mov byte [esp + 0x51], 0x15
mov dword [esp + 0x97], 0
call fcn.0065cfb0
mov ecx, dword [0x77da48]
mov edx, dword [ecx + 0x458]
push 0x20
add edx, 4
push edx
lea eax, [esp + 0x7e]
push eax
call fcn.0065cfb0
add esp, 0x18
dec esi
je 0x4ad532
dec esi
jne 0x4ad53a
mov byte [esp + 0x8a], 0
jmp 0x4ad53a
mov byte [esp + 0x8a], 1
mov edx, dword [0x7695d0]
mov ecx, 0x7695d0
call dword [edx + 8]
mov ecx, dword [0x77db4c]
push 0
push 0x4b
lea edx, [esp + 0x4c]
mov dword [esp + 0x4e], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
jmp case.0x4ad26b.3
push 1
push esi
mov ecx, ebp
call fcn.004ac080
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004acc40
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004accc0
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004acd40
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ace00
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004acec0
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004acf70
jmp case.0x4ad26b.3
cmp esi, 1
jne case.0x4ad26b.3
mov eax, dword [ebp + 0x444]
cmp eax, 0xffffffff
je case.0x4ad26b.3
mov dword [esp + 0x12], eax
mov eax, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0xc], 0x17
mov byte [esp + 0xd], 4
call dword [eax + 8]
mov ecx, dword [0x77db4c]
mov dword [esp + 0xe], eax
mov edx, dword [ecx]
push 0
push 0xa
lea eax, [esp + 0x14]
push eax
call dword [edx + 0x10]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
mov al, 1
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004ac220
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac1e0
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac1a0
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac260
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac2c0
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004abb90
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004abd70
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac320
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac3a0
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac430
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac6e0
jmp case.0x4ad26b.3
cmp esi, 1
sete cl
add cl, 5
mov byte [esp + 0xc], 0x19
mov byte [esp + 0x12], cl
jmp 0x4ad892
cmp esi, 1
jne case.0x4ad26b.3
mov byte [esp + 0x22], 1
jmp 0x4ad6ab
cmp esi, 1
jne case.0x4ad26b.3
mov byte [esp + 0x22], 2
mov eax, dword [ebp + 0x444]
mov edx, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0x18], 0xc
mov byte [esp + 0x19], 3
mov dword [esp + 0x1e], eax
call dword [edx + 8]
mov ecx, dword [0x77db4c]
push 0
push 0xb
lea edx, [esp + 0x20]
mov dword [esp + 0x22], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
jmp case.0x4ad26b.3
mov ecx, dword [0x7839e4]
call fcn.00640280
test eax, eax
je case.0x4ad26b.3
dec esi
mov edi, dword [eax + 0x11c]
jne 0x4ad82a
test edi, edi
je 0x4ad82a
mov ecx, dword [edi + 0x2c]
mov edx, dword [esp + 0x1c]
xor eax, eax
mov dword [esp + 0x36], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x32], ecx
mov dword [esp + 0x3a], edx
mov edx, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0x2c], 4
mov byte [esp + 0x2d], 3
mov dword [esp + 0x3e], eax
call dword [edx + 8]
mov ecx, dword [0x77db4c]
push 0
push 0x16
lea edx, [esp + 0x34]
mov dword [esp + 0x36], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
push 0
call fcn.0062c610
mov ecx, eax
call fcn.00601bf0
mov al, byte [0x77c5e8]
test al, al
je 0x4ad82a
lea ecx, [esp + 0x44]
call fcn.004ab650
mov eax, dword [edi + 0x30]
lea ecx, [edi + 4]
push ecx
lea edx, [esp + 0x57]
mov esi, 1
push edx
mov dword [esp + 0x53], esi
mov dword [esp + 0x57], eax
call fcn.0065d920
mov ecx, dword [0x77da48]
mov word [esp + 0x87], si
mov dword [esp + 0x83], esi
mov eax, dword [ecx + 0x458]
mov edx, dword [eax + 0x2c]
mov eax, dword [eax + 0x30]
mov dword [esp + 0x7b], edx
mov dword [esp + 0x18], eax
mov eax, dword [ecx + 0x458]
mov ecx, dword [eax + 0x2c]
mov eax, dword [eax + 0x30]
add esp, 8
mov dword [esp + 0x77], eax
mov dword [esp + 0xc], ecx
mov ecx, dword [0x77db4c]
mov edx, dword [ecx]
push 0x44
lea eax, [esp + 0x48]
push eax
call dword [edx + 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [esp + 0x1e], ecx
mov ecx, dword [0x77db4c]
push 0xa
lea eax, [esp + 0x1c]
mov byte [esp + 0x1c], 4
mov byte [esp + 0x1d], 2
mov edx, dword [ecx]
push eax
call dword [edx + 0x1c]
push esi
push 0x33
call fcn.004acbb0
mov ecx, eax
call fcn.004acb80
jmp case.0x4ad26b.3
mov esi, 1
push esi
push 0x33
call fcn.004acbb0
mov ecx, eax
call fcn.004acb80
jmp case.0x4ad26b.3
cmp esi, 1
jne 0x4ad859
mov ecx, dword [0x77da48]
mov ecx, dword [ecx + 0x458]
call fcn.00435f90
mov eax, dword [0x77e1dc]
test eax, eax
je case.0x4ad26b.3
mov dword [eax + 0x4e8], 0
jmp case.0x4ad26b.3
mov eax, dword [ebp + 0x444]
test eax, eax
jne 0x4ad8c2
cmp esi, 1
jne case.0x4ad26b.3
mov byte [esp + 0xc], 0x1c
mov byte [esp + 0x12], 0
mov edx, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0xd], 4
call dword [edx + 8]
mov ecx, dword [0x77db4c]
push 0
push 7
lea edx, [esp + 0x14]
mov dword [esp + 0x16], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004acff0
jmp case.0x4ad26b.3
mov eax, dword [ebp + 0x444]
test eax, eax
jne 0x4ad917
cmp esi, 1
jne case.0x4ad26b.3
mov eax, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0xc], 0x1c
mov byte [esp + 0xd], 4
mov byte [esp + 0x12], 2
call dword [eax + 8]
mov ecx, dword [0x77db4c]
mov dword [esp + 0xe], eax
mov edx, dword [ecx]
push 0
push 7
lea eax, [esp + 0x14]
jmp 0x4ad5ec
push esi
mov ecx, ebp
call fcn.004ad0b0
jmp case.0x4ad26b.3
mov eax, dword [ebp + 0x444]
test eax, eax
jne 0x4ad94e
cmp esi, 1
jne case.0x4ad26b.3
push 0
push ecx
push 0x70903c
mov ecx, 0x77e198
call fcn.004651b0
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ad170
jmp case.0x4ad26b.3
dec esi
jne case.0x4ad26b.58
mov ecx, dword [0x77da48]
mov ecx, dword [ecx + 0x458]
call fcn.00435f40
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
dec esi
jne case.0x4ad26b.58
mov edx, dword [ebp + 0x444]
mov eax, dword [0x77da48]
mov ecx, dword [eax + 0x458]
push edx
call fcn.00435500
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
dec esi
jne case.0x4ad26b.58
mov byte [esp + 0xc], 4
mov byte [esp + 0xd], 0x56
mov dword [esp + 0x12], 1
jmp 0x4add60
dec esi
jne case.0x4ad26b.58
mov byte [esp + 0xd], 0x56
jmp 0x4ada11
dec esi
jne case.0x4ad26b.58
mov byte [esp + 0xc], 4
mov byte [esp + 0xd], 0x55
mov dword [esp + 0x12], 1
jmp 0x4add60
dec esi
jne case.0x4ad26b.58
mov byte [esp + 0xd], 0x55
mov eax, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0xc], 4
mov dword [esp + 0x12], 2
call dword [eax + 8]
mov ecx, dword [0x77db4c]
push 0
mov dword [esp + 0x12], eax
mov edx, dword [ecx]
push 0xa
lea eax, [esp + 0x14]
push eax
call dword [edx + 0x10]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
dec esi
jne case.0x4ad26b.58
mov byte [esp + 0xc], 4
mov byte [esp + 0xd], 0x57
jmp 0x4ae131
dec esi
jne case.0x4ad26b.58
mov byte [esp + 0xc], 4
mov byte [esp + 0xd], 0x58
jmp 0x4ae17f
dec esi
jne case.0x4ad26b.58
mov eax, dword [ebp + 0x444]
test eax, eax
je case.0x4ad26b.58
mov ecx, dword [eax]
mov edx, dword [0x7695d0]
mov dword [esp + 0x12], ecx
mov ecx, 0x7695d0
mov byte [esp + 0xc], 4
mov byte [esp + 0xd], 0x12
call dword [edx + 8]
push 0
push 0xa
lea edx, [esp + 0x14]
jmp 0x4ae147
dec esi
jne case.0x4ad26b.58
mov ecx, dword [ebp + 0x444]
test ecx, ecx
je case.0x4ad26b.58
call fcn.005308a0
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push 1
push esi
mov ecx, ebp
call fcn.004ab750
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push 1
push esi
mov ecx, ebp
call fcn.004ab7d0
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push 0
push esi
mov ecx, ebp
call fcn.004ab750
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push 0
push esi
mov ecx, ebp
call fcn.004ab7d0
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004ac700
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004abb10
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004ac6a0
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004ab850
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004ab8b0
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004ab920
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004ab990
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004ab9f0
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004aba50
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004abab0
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
call fcn.0041b320
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x2c]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 1
jne case.0x4ad26b.58
mov ecx, dword [0x77e2c0]
test ecx, ecx
je case.0x4ad26b.58
call fcn.0046fa10
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 1
jne 0x4ae01e
mov eax, dword [ebp + 0x444]
mov edx, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0xc], 0x21
mov byte [esp + 0xd], 1
mov dword [esp + 0x12], eax
call dword [edx + 8]
mov ecx, dword [0x77db4c]
push 0
push 0xa
lea edx, [esp + 0x14]
mov dword [esp + 0x16], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
jmp 0x4ae01e
cmp esi, 1
jne 0x4ae01e
mov byte [esp + 0xc], 0x19
mov byte [esp + 0xd], 5
jmp 0x4adff9
cmp esi, 1
jne case.0x4ad26b.58
mov ecx, dword [ebp + 0x444]
mov byte [esp + 0xc], 0x24
mov byte [esp + 0xd], 6
mov dword [esp + 0x12], ecx
mov edx, dword [0x7695d0]
mov ecx, 0x7695d0
call dword [edx + 8]
push 0
push 0xa
lea edx, [esp + 0x14]
jmp 0x4ae147
cmp esi, 1
jne 0x4adda8
mov ecx, dword [0x77e218]
test ecx, ecx
je case.0x4ad26b.58
call fcn.00479de0
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 2
jne case.0x4ad26b.58
mov ecx, dword [0x77e218]
test ecx, ecx
je case.0x4ad26b.58
call fcn.00479ce0
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 1
jne 0x4ade06
mov ecx, dword [0x77e2d8]
test ecx, ecx
je case.0x4ad26b.58
call fcn.0048d460
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 2
jne case.0x4ad26b.58
mov ecx, dword [0x77e2d8]
test ecx, ecx
je case.0x4ad26b.58
call fcn.00614e00
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 1
jne 0x4ade85
mov eax, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0xc], 0x16
mov byte [esp + 0xd], 0x13
mov byte [esp + 0x12], 2
call dword [eax + 8]
mov ecx, dword [0x77db4c]
push 0
mov dword [esp + 0x12], eax
mov edx, dword [ecx]
push 7
lea eax, [esp + 0x14]
push eax
call dword [edx + 0x10]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 2
jne case.0x4ad26b.58
mov edx, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0xc], 0x16
mov byte [esp + 0xd], 0x13
mov byte [esp + 0x12], 1
call dword [edx + 8]
push 0
push 7
lea edx, [esp + 0x14]
jmp 0x4ae147
cmp esi, 1
jne 0x4adefc
mov eax, dword [ebp + 0x444]
mov edx, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0x18], 0x16
mov byte [esp + 0x19], 0x1c
mov dword [esp + 0x1e], eax
mov byte [esp + 0x22], 1
call dword [edx + 8]
mov ecx, dword [0x77db4c]
push 0
push 0xb
lea edx, [esp + 0x20]
mov dword [esp + 0x22], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
mov ecx, ebp
call fcn.00614e00
push esi
mov ecx, ebp
call fcn.004ac600
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
call fcn.0045ca40
mov ecx, dword [eax + 0x54]
test ecx, ecx
je 0x4ae4bc
lea ecx, [esp + 0x44]
call fcn.004532f0
push 0x4f
call fcn.0045ca40
mov eax, dword [eax + 0x54]
push eax
lea ecx, [esp + 0x4c]
push ecx
call fcn.0065c820
add esp, 0xc
cmp esi, 1
jne 0x4adf7f
mov edx, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0x92], 1
call dword [edx + 8]
mov ecx, dword [0x77db4c]
push 0
push 0x4f
lea edx, [esp + 0x4c]
mov dword [esp + 0x4e], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
jmp 0x4adfb1
cmp esi, 2
jne 0x4adfb1
mov eax, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0x92], 2
call dword [eax + 8]
mov ecx, dword [0x77db4c]
push 0
mov dword [esp + 0x4a], eax
mov edx, dword [ecx]
push 0x4f
lea eax, [esp + 0x4c]
push eax
call dword [edx + 0x10]
mov ecx, ebp
call fcn.00614e00
call fcn.0045ca40
mov ecx, eax
call fcn.00452f00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 1
jne case.0x4ad26b.58
mov byte [esp + 0xc], 0x29
mov byte [esp + 0xd], 9
jmp 0x4ae131
cmp esi, 1
jne 0x4ae01e
mov byte [esp + 0xc], 0x1b
mov byte [esp + 0xd], 0x17
mov eax, dword [0x7695d0]
mov ecx, 0x7695d0
call dword [eax + 8]
mov ecx, dword [0x77db4c]
push 0
mov dword [esp + 0x12], eax
mov edx, dword [ecx]
push 6
lea eax, [esp + 0x14]
push eax
call dword [edx + 0x10]
mov eax, dword [0x77e1dc]
test eax, eax
je case.0x4ad26b.58
mov ecx, ebp
mov dword [eax + 0x4e8], 0
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 1
jne case.0x4ad26b.58
mov byte [esp + 0xc], 0x16
mov byte [esp + 0xd], 0x36
jmp 0x4ae131
cmp esi, 1
jne case.0x4ad26b.58
mov byte [esp + 0xc], 0x16
mov byte [esp + 0xd], 0x43
jmp 0x4ae17f
cmp esi, 1
jne case.0x4ad26b.58
mov byte [esp + 0xc], 0x16
mov byte [esp + 0xd], 0x44
jmp 0x4ae131
cmp esi, 1
jne case.0x4ad26b.58
mov byte [esp + 0xc], 0x16
mov byte [esp + 0xd], 0x45
jmp 0x4ae17f
cmp esi, 1
jne case.0x4ad26b.58
mov byte [esp + 0xc], 0x16
mov byte [esp + 0xd], 0x46
jmp 0x4ae131
cmp esi, 1
jne case.0x4ad26b.58
mov byte [esp + 0xc], 0x16
mov byte [esp + 0xd], 0x47
jmp 0x4ae17f
cmp esi, 1
jne case.0x4ad26b.58
mov byte [esp + 0xc], 0x16
mov byte [esp + 0xd], 0x48
jmp 0x4ae131
cmp esi, 1
jne case.0x4ad26b.58
mov byte [esp + 0xc], 0x16
mov byte [esp + 0xd], 0x49
jmp 0x4ae17f
push esi
mov ecx, ebp
call fcn.004ac740
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 1
jne case.0x4ad26b.58
mov byte [esp + 0xc], 0x1b
mov byte [esp + 0xd], 0x18
mov edx, dword [0x7695d0]
mov ecx, 0x7695d0
call dword [edx + 8]
push 0
push 6
lea edx, [esp + 0x14]
mov ecx, dword [0x77db4c]
mov dword [esp + 0x16], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 1
jne case.0x4ad26b.58
mov byte [esp + 0xc], 0x15
mov byte [esp + 0xd], 0x1a
mov eax, dword [0x7695d0]
mov ecx, 0x7695d0
call dword [eax + 8]
mov ecx, dword [0x77db4c]
push 0
mov dword [esp + 0x12], eax
mov edx, dword [ecx]
push 6
lea eax, [esp + 0x14]
push eax
call dword [edx + 0x10]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 1
jne case.0x4ad26b.58
mov cl, byte [ebp + 0x444]
mov edx, dword [0x7695d0]
mov byte [esp + 0x12], cl
mov ecx, 0x7695d0
mov byte [esp + 0xc], 0x19
mov byte [esp + 0xd], 4
call dword [edx + 8]
mov ecx, dword [0x77db4c]
push 0
push 7
lea edx, [esp + 0x14]
mov dword [esp + 0x16], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
mov ecx, dword [0x77e2e8]
test ecx, ecx
je case.0x4ad26b.58
call fcn.00614e00
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 1
jne case.0x4ad26b.58
mov eax, dword [0x77e2ec]
test eax, eax
je case.0x4ad26b.58
mov edx, dword [0x7695d0]
lea esi, [eax + 0x440]
mov al, byte [ebp + 0x444]
mov ecx, 0x1c
lea edi, [esp + 0x44]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov ecx, 0x7695d0
mov byte [esp + 0xb6], al
call dword [edx + 8]
mov ecx, dword [0x77db4c]
push 0
push 0x73
lea edx, [esp + 0x4c]
mov dword [esp + 0x4e], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
mov ecx, dword [0x77e2ec]
call fcn.00614e00
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
push esi
mov ecx, ebp
call fcn.004ac4c0
jmp case.0x4ad26b.3
push esi
mov ecx, ebp
call fcn.004ac5b0
jmp case.0x4ad26b.3
dec esi
jne case.0x4ad26b.58
mov ecx, dword [0x77e1b4]
call fcn.004ebf90
mov ecx, dword [0x77e1b4]
call fcn.00614e00
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
dec esi
je 0x4ae2fb
dec esi
jne 0x4ae4bc
mov al, 1
jmp 0x4ae2fd
mov al, 2
mov esi, dword [ebp + 0x444]
mov ecx, 0xc
lea edi, [esp + 0x44]
rep movsd dword es:[edi], dword [esi]
mov byte [esp + 0x4f], al
mov eax, dword [0x7695d0]
mov ecx, 0x7695d0
call dword [eax + 8]
mov ecx, dword [0x77db4c]
push 0
mov dword [esp + 0x4a], eax
mov edx, dword [ecx]
push 0x30
lea eax, [esp + 0x4c]
push eax
call dword [edx + 0x10]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
dec esi
mov eax, dword [ebp + 0x444]
je 0x4ae366
dec esi
jne case.0x4ad26b.58
mov dword [esp + 0x27], 0
jmp 0x4ae36e
mov dword [esp + 0x27], 1
mov ecx, dword [eax + 0xb]
mov edx, dword [eax + 7]
mov eax, dword [0x7695d0]
mov dword [esp + 0x23], ecx
mov ecx, 0x7695d0
mov dword [esp + 0x1f], edx
mov byte [esp + 0x19], 0xc
mov byte [esp + 0x1e], 0
mov byte [esp + 0x18], 0x2e
call dword [eax + 8]
mov ecx, dword [0x77db4c]
push 0
mov dword [esp + 0x1e], eax
mov edx, dword [ecx]
lea eax, [esp + 0x1c]
push 0x13
push eax
call dword [edx + 0x10]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
dec esi
je 0x4ae421
dec esi
jne case.0x4ad26b.58
mov edx, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0x18], 0x2e
mov byte [esp + 0x1e], 0
mov byte [esp + 0x19], 0x12
mov dword [esp + 0x1f], 0
call dword [edx + 8]
mov ecx, dword [0x77db4c]
push 0
push 0xb
lea edx, [esp + 0x20]
mov dword [esp + 0x22], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
mov eax, dword [0x7695d0]
mov ecx, 0x7695d0
mov byte [esp + 0x18], 0x2e
mov byte [esp + 0x1e], 0
mov byte [esp + 0x19], 0x12
mov dword [esp + 0x1f], 1
call dword [eax + 8]
mov ecx, dword [0x77db4c]
push 0
mov dword [esp + 0x1e], eax
mov edx, dword [ecx]
push 0xb
lea eax, [esp + 0x20]
push eax
call dword [edx + 0x10]
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 1
jne case.0x4ad26b.58
mov ecx, dword [0x77e2b0]
test ecx, ecx
je case.0x4ad26b.58
call fcn.00614e00
mov ecx, ebp
mov dword [0x77e2b0], 0
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4
cmp esi, 1
jne case.0x4ad26b.58
mov ecx, dword [0x77f668]
call fcn.0052c4c0
mov ecx, ebp
call fcn.00614e00
pop edi
pop esi
xor al, al
pop ebp
add esp, 0xac
ret 4