Function at 0x453a14
Capabilities:
Acquire debug privileges

Disassembly:
push ebp
mov ebp, esp
mov ecx, 9
push 0
push 0
dec ecx
jne 0x453a1c
push ecx
push ebx
push esi
push edi
mov eax, dword [0x458bb0]
mov byte [eax], 1
mov eax, 0x45021c
call fcn.0040a7d8
mov ebx, dword [0x458a2c]
xor eax, eax
push ebp
push 0x4542a0
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, ebx
mov edx, 0x4542bc
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x454300
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x45432c
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x454378
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
xor edx, edx
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
call fcn.004047a0
dec eax
jl 0x453b64
lea edx, [ebp - 0x14]
mov eax, 1
call fcn.00404800
mov eax, dword [ebp - 0x14]
mov edx, 0x4543a4
call fcn.00407d8c
je 0x453c58
lea edx, [ebp - 0x18]
mov eax, 1
call fcn.00404800
mov eax, dword [ebp - 0x18]
mov edx, 0x4543b8
call fcn.00407d8c
je 0x453c58
lea edx, [ebp - 0x1c]
mov eax, 1
call fcn.00404800
mov eax, dword [ebp - 0x1c]
mov edx, 0x4543cc
call fcn.00407d8c
je 0x453c58
lea edx, [ebp - 0x20]
mov eax, 1
call fcn.00404800
mov eax, dword [ebp - 0x20]
mov edx, 0x4543e0
call fcn.00407d8c
je 0x453c58
lea edx, [ebp - 0x24]
mov eax, 1
call fcn.00404800
mov eax, dword [ebp - 0x24]
mov edx, 0x4543f4
call fcn.00407d8c
je 0x453c58
mov eax, ebx
mov edx, 0x454408
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x454424
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
xor edx, edx
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x454484
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x4544e4
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x45456c
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x4545d8
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x454654
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x4546b8
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x454700
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x45476c
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
jmp 0x454285
lea edx, [ebp - 0x28]
mov eax, 1
call fcn.00404800
mov eax, dword [ebp - 0x28]
mov edx, 0x4543a4
call fcn.00407d8c
jne 0x453c9a
lea edx, [ebp - 0x2c]
mov eax, 0x4547d0
call fcn.0044d224
mov edx, dword [ebp - 0x2c]
mov eax, ebx
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
jmp 0x454285
xor edx, edx
mov eax, 6
call fcn.0041f898
test al, al
jne 0x453cdb
mov eax, ebx
mov edx, 0x4547ec
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x45483c
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
jmp 0x454285
call fcn.0044a9c8
test al, al
jne 0x453cff
mov eax, ebx
mov edx, 0x4548c0
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
jmp 0x454285
call fcn.0044ab40
lea edx, [ebp - 0x30]
mov eax, 1
call fcn.00404800
mov eax, dword [ebp - 0x30]
mov edx, 0x4543b8
call fcn.00407d8c
jne 0x453fb2
cmp byte [0x45dfe8], 0
je 0x453d4d
mov eax, ebx
mov edx, 0x45491c
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, 1
call fcn.00406f10
mov eax, ebx
mov edx, 0x454984
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x4549b8
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x454a4c
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x454ae8
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x454b84
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x454c10
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, ebx
mov edx, 0x454c54
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
lea edx, [ebp - 0x34]
mov eax, 2
call fcn.00404800
mov eax, dword [ebp - 0x34]
mov edx, 0x454c84
call fcn.00407d8c
jne 0x453e14
mov eax, 0x45dfec
mov edx, 0x454c98
call fcn.00407394
jmp 0x453e23
mov eax, 0x45dfec
mov edx, 0x454ce8
call fcn.00407394
cmp byte [0x45dff0], 0x40
jne 0x453e31
call fcn.0044aa0c
call fcn.0044e1b0
call fcn.0044bb58
mov eax, ebx
mov edx, 0x454d44
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
lea edx, [ebp - 0x38]
mov eax, 2
call fcn.00404800
mov eax, dword [ebp - 0x38]
mov edx, 0x454d80
call fcn.00407d8c
je 0x453e8d
lea edx, [ebp - 0x3c]
mov eax, 3
call fcn.00404800
mov eax, dword [ebp - 0x3c]
mov edx, 0x454d80
call fcn.00407d8c
je 0x453e8d
xor eax, eax
jmp 0x453e8f
mov al, 1
mov byte [0x45dfe9], al
call fcn.0044d42c
mov eax, ebx
mov edx, 0x454d94
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
call fcn.0044c918
mov eax, ebx
mov edx, 0x454de8
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
call fcn.0044eb14
mov eax, ebx
mov edx, 0x454e30
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, 0x454e74
call fcn.0044c284
mov eax, dword [0x45e008]
call fcn.0044c54c
push 0x3e8
call sub.kernel32.dll_Sleep_1
mov eax, dword [0x45e00c]
call fcn.00408974
test eax, eax
jle 0x453f36
mov eax, dword [0x45e00c]
call fcn.00408974
mov esi, eax
dec esi
test esi, esi
jl 0x453f36
inc esi
xor edi, edi
mov eax, dword [0x45e00c]
mov eax, dword [eax + edi*4]
call fcn.0044b910
inc edi
dec esi
jne 0x453f25
push 0x1f4
call sub.kernel32.dll_Sleep_1
mov eax, 0x454ea4
call fcn.0044b910
push 0x1f4
call sub.kernel32.dll_Sleep_1
mov eax, ebx
mov edx, 0x454ec8
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov al, 1
call fcn.0044eb9c
mov eax, ebx
mov edx, 0x454f0c
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov al, 1
call fcn.0044f648
mov eax, ebx
mov edx, 0x454f50
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
cmp byte [0x45dff0], 0x40
jne 0x453fb2
call fcn.0044aaa8
lea edx, [ebp - 0x40]
mov eax, 1
call fcn.00404800
mov eax, dword [ebp - 0x40]
mov edx, 0x4543e0
call fcn.00407d8c
jne 0x454159
cmp byte [0x45dfe8], 0
jne 0x453ffb
mov eax, ebx
mov edx, 0x454f94
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, 1
call fcn.00406f10
mov eax, ebx
mov edx, 0x454ff4
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
cmp byte [0x45dff0], 0x40
jne 0x45401f
call fcn.0044aa0c
call fcn.0044bb58
mov eax, ebx
mov edx, 0x455028
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
call fcn.0044cd34
mov eax, ebx
mov edx, 0x454e30
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, 0x454e74
call fcn.0044c284
mov eax, dword [0x45e008]
call fcn.0044c54c
push 0x3e8
call sub.kernel32.dll_Sleep_1
mov eax, ebx
mov edx, 0x455078
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
call fcn.0044dc70
mov eax, dword [0x45e00c]
call fcn.00408974
test eax, eax
jle 0x4540c1
mov eax, dword [0x45e00c]
call fcn.00408974
mov esi, eax
dec esi
test esi, esi
jl 0x4540c1
inc esi
xor edi, edi
mov eax, dword [0x45e00c]
mov eax, dword [eax + edi*4]
call fcn.0044b910
inc edi
dec esi
jne 0x4540b0
push 0x1f4
call sub.kernel32.dll_Sleep_1
mov eax, 0x454ea4
call fcn.0044b910
push 0x1f4
call sub.kernel32.dll_Sleep_1
lea edx, [ebp - 0x44]
mov eax, 2
call fcn.00404800
mov eax, dword [ebp - 0x44]
mov edx, 0x4550b0
call fcn.00407d8c
je 0x454135
mov eax, ebx
mov edx, 0x454ec8
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
xor eax, eax
call fcn.0044eb9c
mov eax, ebx
mov edx, 0x454f0c
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
xor eax, eax
call fcn.0044f648
cmp byte [0x45dff0], 0x40
jne 0x454143
call fcn.0044aaa8
mov eax, ebx
mov edx, 0x4550c4
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
lea edx, [ebp - 0x48]
mov eax, 1
call fcn.00404800
mov eax, dword [ebp - 0x48]
mov edx, 0x4543cc
call fcn.00407d8c
jne 0x4541b9
cmp byte [0x45dfe8], 0
jne 0x45419e
mov eax, ebx
mov edx, 0x454f94
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, 1
call fcn.00406f10
mov eax, ebx
mov edx, 0x45510c
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
call fcn.0044fadc
lea edx, [ebp - 0x4c]
mov eax, 1
call fcn.00404800
mov eax, dword [ebp - 0x4c]
mov edx, 0x4543f4
call fcn.00407d8c
jne 0x454285
mov eax, ebx
mov edx, 0x455150
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
call fcn.0044bb58
mov eax, ebx
mov edx, 0x454e30
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
mov eax, 0x454e74
call fcn.0044c284
mov eax, dword [0x45e008]
call fcn.0044c54c
push 0x3e8
call sub.kernel32.dll_Sleep_1
mov eax, dword [0x45e00c]
call fcn.00408974
test eax, eax
jle 0x45425b
mov eax, dword [0x45e00c]
call fcn.00408974
mov esi, eax
dec esi
test esi, esi
jl 0x45425b
inc esi
xor edi, edi
mov eax, dword [0x45e00c]
mov eax, dword [eax + edi*4]
call fcn.0044b910
inc edi
dec esi
jne 0x45424a
push 0x1f4
call sub.kernel32.dll_Sleep_1
mov eax, 0x454ea4
call fcn.0044b910
mov eax, ebx
mov edx, 0x455180
call fcn.004053c0
call fcn.004054c0
call fcn.00404594
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4542a7
lea eax, [ebp - 0x4c]
mov edx, 0xf
call fcn.00407044
ret