Function at 0x45a39c
Capabilities:
Self delete
Terminate process
Terminate thread

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x1d
push 0
push 0
dec ecx
jne 0x45a3a4
push ecx
push ebx
push esi
xor eax, eax
push ebp
push 0x45b4da
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x45a1a8
call fcn.00432ec8
mov byte [0x4630e4], 1
mov eax, dword [0x461c34]
cmp dword [eax], 0
jne 0x45a3dc
call fcn.0045a2d0
lea edx, [ebp - 0x24]
xor eax, eax
call fcn.00433370
push dword [ebp - 0x24]
push 0x45b4f4
lea eax, [ebp - 0x28]
call fcn.0042fce0
push dword [ebp - 0x28]
push 0x45b4f4
call sub.kernel32.dll_GetTickCount_1
mov ecx, 0x3e8
xor edx, edx
div ecx
xor edx, edx
push edx
push eax
lea eax, [ebp - 0x2c]
call fcn.004085f8
push dword [ebp - 0x2c]
push 0x45b4f4
lea eax, [ebp - 0x30]
call fcn.00430488
push dword [ebp - 0x30]
push 0x45b4f4
mov eax, dword [0x4619d8]
push dword [eax]
push 0x45b500
lea eax, [ebp - 0x18]
mov edx, 0xa
call fcn.00404788
lea ecx, [ebp - 0x10]
mov dx, 0x3e8
mov eax, dword [ebp - 0x18]
call fcn.00426c5c
cmp dword [ebp - 0x10], 0
jne 0x45a47f
xor eax, eax
mov dword [0x4630e0], eax
call fcn.0045a2d0
lea ecx, [ebp - 0x10]
mov dx, 0x3e8
mov eax, dword [ebp - 0x18]
call fcn.00426c5c
cmp dword [ebp - 0x10], 0
je 0x45a465
lea eax, [ebp - 0x10]
call fcn.00426ba0
mov ebx, eax
cmp bx, 0x3e8
jne 0x45a50e
cmp byte [0x4630e4], 0
je 0x45a3cd
mov edx, dword [ebp - 0x10]
mov eax, 0x45b4f4
call fcn.004049b0
test eax, eax
jle 0x45a3cd
lea ecx, [ebp - 0x20]
mov edx, 0x45b4f4
mov eax, dword [ebp - 0x10]
call fcn.0043156c
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00432a00
test al, al
je 0x45a3cd
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 4]
call fcn.00432a00
test al, al
je 0x45a3cd
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 4]
call fcn.00408648
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00408648
pop edx
call fcn.0041bb38
push eax
call sub.kernel32.dll_Sleep
jmp 0x45a3cd
cmp bx, 0x44f
jne 0x45a522
mov eax, dword [ebp - 0x10]
call fcn.00452144
jmp 0x45a3cd
cmp bx, 0x44e
jne 0x45a54b
mov eax, dword [0x461b74]
cmp dword [eax], 0
jbe 0x45a3cd
push 0
mov eax, dword [0x461b74]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_TerminateThread
jmp 0x45a3cd
cmp bx, 0x449
jne 0x45a55f
mov eax, dword [ebp - 0x10]
call fcn.00434d04
jmp 0x45a3cd
cmp bx, 0x444
jne 0x45a598
cmp dword [0x4630dc], 0
jbe 0x45a579
mov eax, dword [0x4630dc]
call fcn.004329d4
push 0
lea eax, [ebp - 0x10]
call fcn.00404920
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.004281c8
mov dword [0x4630dc], eax
jmp 0x45a3cd
cmp bx, 0x418
jne 0x45a5c5
mov eax, dword [ebp - 0x10]
call fcn.00432a00
test al, al
je 0x45a3cd
mov eax, dword [ebp - 0x10]
call fcn.00408648
mov edx, dword [0x461a04]
mov word [edx], ax
jmp 0x45a3cd
cmp bx, 0x442
jne 0x45a5f4
mov eax, dword [0x4618b0]
cmp byte [eax], 0
je 0x45a3cd
push 0
lea eax, [ebp - 0x10]
call fcn.00404920
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.004281c8
jmp 0x45a3cd
cmp bx, 0x441
jne 0x45a76d
lea ecx, [ebp - 0x34]
mov eax, dword [0x461934]
mov eax, dword [eax]
mov edx, 0x45b50c
call fcn.00418058
mov eax, dword [ebp - 0x34]
call fcn.0042f540
test al, al
je 0x45a3cd
lea eax, [ebp - 0x38]
call fcn.00430488
mov eax, dword [ebp - 0x38]
mov edx, 0x45b518
call fcn.00404814
je 0x45a3cd
lea edx, [ebp - 0x3c]
mov eax, 4
call fcn.00432bec
mov eax, dword [ebp - 0x3c]
push eax
lea eax, [ebp - 0x40]
call fcn.0043344c
lea eax, [ebp - 0x40]
mov edx, 0x45b524
call fcn.004046d0
mov eax, dword [ebp - 0x40]
pop edx
call fcn.00432af4
lea eax, [ebp - 0x44]
call fcn.0043344c
lea eax, [ebp - 0x44]
mov edx, 0x45b534
call fcn.004046d0
mov eax, dword [ebp - 0x44]
push eax
mov edx, dword [0x461aa8]
mov edx, dword [edx]
lea eax, [ebp - 0x48]
mov ecx, 0x45b534
call fcn.00404714
mov eax, dword [ebp - 0x48]
pop edx
call fcn.00430f34
mov eax, dword [0x461aa8]
push dword [eax]
lea edx, [ebp - 0x50]
mov eax, 0x45b548
call fcn.00433658
push dword [ebp - 0x50]
push 0x45b554
lea eax, [ebp - 0x4c]
mov edx, 3
call fcn.00404788
mov eax, dword [ebp - 0x4c]
push eax
lea eax, [ebp - 0x54]
call fcn.0043344c
lea eax, [ebp - 0x54]
mov edx, 0x45b564
call fcn.004046d0
mov edx, dword [ebp - 0x54]
pop eax
call fcn.00430f34
lea eax, [ebp - 0x58]
call fcn.0043344c
lea eax, [ebp - 0x58]
mov edx, 0x45b578
call fcn.004046d0
mov eax, dword [ebp - 0x58]
push eax
mov edx, dword [0x461aa8]
mov edx, dword [edx]
lea eax, [ebp - 0x5c]
mov ecx, 0x45b578
call fcn.00404714
mov eax, dword [ebp - 0x5c]
pop edx
call fcn.00430f34
push 0
lea eax, [ebp - 0x10]
call fcn.00404920
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.004281c8
push 0xbb8
call sub.kernel32.dll_Sleep
push 0
lea eax, [ebp - 0x10]
call fcn.00404920
push eax
lea eax, [ebp - 0x60]
call fcn.004292bc
mov eax, dword [ebp - 0x60]
xor edx, edx
pop ecx
call fcn.004281c8
call fcn.004336f0
jmp 0x45a3cd
cmp bx, 0x440
jne 0x45a7bb
mov edx, dword [ebp - 0x10]
mov eax, 0x45b58c
call fcn.004049b0
test eax, eax
jle 0x45a3cd
mov edx, 0x45b58c
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0043156c
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 8]
call fcn.00408648
mov ecx, eax
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00430d14
jmp 0x45a3cd
cmp bx, 0x43c
jne 0x45a7cc
call fcn.0042ce80
jmp 0x45a3cd
cmp bx, 0x43b
jne 0x45a7dd
call fcn.0042cec0
jmp 0x45a3cd
cmp bx, 0x43a
jne 0x45a7ee
call fcn.0042cf24
jmp 0x45a3cd
cmp bx, 0x439
jne 0x45a801
xor eax, eax
call fcn.0042cf68
jmp 0x45a3cd
cmp bx, 0x437
jne 0x45a817
mov eax, 0x456720
call fcn.00432ec8
jmp 0x45a3cd
cmp bx, 0x438
jne 0x45a82d
mov eax, 0x456268
call fcn.00432ec8
jmp 0x45a3cd
cmp bx, 0x435
jne 0x45a849
mov eax, dword [0x461948]
mov byte [eax], 0
mov eax, dword [0x461b10]
mov byte [eax], 0
jmp 0x45a3cd
cmp bx, 0x434
jne 0x45a85d
mov eax, dword [0x461948]
mov byte [eax], 0
jmp 0x45a3cd
cmp bx, 0x431
jne 0x45a881
mov eax, dword [0x461948]
cmp byte [eax], 0
jne 0x45a3cd
mov eax, 0x457a24
call fcn.00432ec8
jmp 0x45a3cd
cmp bx, 0x433
jne 0x45a895
mov eax, dword [0x461b10]
mov byte [eax], 0
jmp 0x45a3cd
cmp bx, 0x432
jne 0x45a8b5
lea eax, [ebp - 0x64]
call fcn.004578c0
mov eax, dword [ebp - 0x64]
mov dx, 0x432
call fcn.00426dd4
jmp 0x45a3cd
cmp bx, 0x430
jne 0x45a8f9
mov eax, dword [ebp - 0x10]
call fcn.00432a00
test al, al
je 0x45a3cd
mov eax, dword [0x461b10]
cmp byte [eax], 0
jne 0x45a3cd
mov eax, dword [ebp - 0x10]
call fcn.00408648
mov edx, dword [0x461798]
mov dword [edx], eax
mov eax, 0x457b4c
call fcn.00432ec8
jmp 0x45a3cd
cmp bx, 0x42f
jne 0x45a919
lea eax, [ebp - 0x68]
call fcn.00457c44
mov eax, dword [ebp - 0x68]
mov dx, 0x42f
call fcn.00426dd4
jmp 0x45a3cd
cmp bx, 0x42e
jne 0x45a93c
mov eax, dword [0x461b08]
mov edx, dword [ebp - 0x10]
call fcn.00404440
mov eax, 0x4571cc
call fcn.00432ec8
jmp 0x45a3cd
cmp bx, 0x42b
jne 0x45a97a
lea eax, [ebp - 0x6c]
call fcn.00430488
mov eax, dword [ebp - 0x6c]
mov edx, 0x45b518
call fcn.00404814
jne 0x45a3cd
mov eax, dword [0x461ae4]
mov edx, dword [ebp - 0x10]
call fcn.00404440
mov eax, 0x459e54
call fcn.00432ec8
jmp 0x45a3cd
cmp bx, 0x3eb
jne 0x45a998
lea eax, [ebp - 0x70]
call fcn.00430158
mov eax, dword [ebp - 0x70]
mov edx, ebx
call fcn.00426dd4
jmp 0x45a3cd
cmp bx, 0x429
jne 0x45a9bb
mov eax, dword [0x461920]
mov edx, dword [ebp - 0x10]
call fcn.00404440
mov eax, 0x4572dc
call fcn.00432ec8
jmp 0x45a3cd
cmp bx, 0x42a
jne 0x45aa27
mov dl, 1
mov eax, 0x45b5a0
call fcn.00432884
lea eax, [ebp - 0x78]
call fcn.004292bc
mov eax, dword [ebp - 0x78]
lea edx, [ebp - 0x74]
call fcn.00408bec
mov eax, dword [ebp - 0x74]
mov dl, 1
call fcn.00432884
push 0x45b5b0
mov eax, dword [0x461aa8]
push dword [eax]
push 0x45b5f4
mov eax, dword [0x461aa8]
push dword [eax]
lea eax, [ebp - 0x7c]
mov edx, 4
call fcn.00404788
mov edx, dword [ebp - 0x7c]
mov eax, 0x45b60c
call fcn.004312c0
call fcn.004336f0
jmp 0x45a3cd
cmp bx, 0x428
jne 0x45aa7d
mov edx, 0x45b58c
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0043156c
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00432a00
test al, al
je 0x45a3cd
push 0
lea edx, [ebp - 0x80]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 4]
call fcn.00429ea8
mov eax, dword [ebp - 0x80]
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00408648
mov ecx, eax
xor eax, eax
pop edx
call fcn.0042d03c
jmp 0x45a3cd
cmp bx, 0x427
jne 0x45aaad
mov edx, 0x45b58c
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0043156c
push 1
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
xor ecx, ecx
call fcn.0042d03c
jmp 0x45a3cd
cmp bx, 0x426
jne 0x45aaf6
mov edx, 0x45b58c
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0043156c
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00432a00
test al, al
je 0x45a3cd
push 0
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00408648
mov ecx, eax
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 4]
xor eax, eax
call fcn.0042d03c
jmp 0x45a3cd
cmp bx, 0x425
jne 0x45ab22
mov edx, 0x45b58c
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0043156c
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.0042a2a4
jmp 0x45a3cd
cmp bx, 0x443
jne 0x45ab96
mov edx, 0x45b58c
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0043156c
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx + 4]
call fcn.00404484
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.0040818c
push 0
lea eax, [ebp - 0x10]
call fcn.00404920
push eax
push 0x45b61c
push dword [ebp - 0x14]
push 0x45b628
mov eax, dword [ebp - 0x20]
push dword [eax + 8]
lea eax, [ebp - 0x84]
mov edx, 4
call fcn.00404788
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x14]
pop ecx
call fcn.004281c8
jmp 0x45a3cd
cmp bx, 0x424
jne 0x45abe3
mov edx, 0x45b58c
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0043156c
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx + 4]
call fcn.00404484
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.0040818c
push 0
lea eax, [ebp - 0x10]
call fcn.00404920
mov ecx, eax
xor edx, edx
mov eax, dword [ebp - 0x14]
call fcn.004281c8
jmp 0x45a3cd
cmp bx, 0x423
jne 0x45abfc
mov eax, dword [ebp - 0x10]
call fcn.00408648
call fcn.004329d4
jmp 0x45a3cd
cmp bx, 0x422
jne 0x45ac29
mov byte [0x4630e4], 0
lea eax, [ebp - 0x88]
call fcn.004295a4
mov eax, dword [ebp - 0x88]
mov dx, 0x422
call fcn.00426dd4
jmp 0x45a3cd
cmp bx, 0x41b
jne 0x45ac62
push 0
mov eax, dword [0x461b18]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_TerminateThread
push 0
mov eax, dword [0x4617fc]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_TerminateThread
push 0
mov eax, dword [0x461b30]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_TerminateProcess
jmp 0x45a3cd
cmp bx, 0x41a
jne 0x45ac7b
mov eax, dword [0x461a50]
mov edx, dword [ebp - 0x10]
call fcn.00404440
jmp 0x45a3cd
cmp bx, 0x445
jne 0x45acbd
mov eax, dword [0x461c60]
mov edx, 0x45b60c
call fcn.00404440
mov byte [0x4630e4], 0
mov dx, 0x419
mov eax, 0x45b634
call fcn.00426dd4
mov eax, 0x458098
call fcn.00432ec8
mov edx, dword [0x4617fc]
mov dword [edx], eax
jmp 0x45a3cd
cmp bx, 0x419
jne 0x45acff
mov eax, dword [0x461c60]
mov edx, 0x45b640
call fcn.00404440
mov byte [0x4630e4], 0
mov dx, 0x419
mov eax, 0x45b634
call fcn.00426dd4
mov eax, 0x458098
call fcn.00432ec8
mov edx, dword [0x4617fc]
mov dword [edx], eax
jmp 0x45a3cd
cmp bx, 0x413
jne 0x45ad74
mov edx, dword [ebp - 0x10]
mov eax, 0x45b4f4
call fcn.004049b0
test eax, eax
je 0x45a3cd
lea ecx, [ebp - 0x20]
mov edx, 0x45b4f4
mov eax, dword [ebp - 0x10]
call fcn.0043156c
lea ecx, [ebp - 0x90]
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
mov ax, 0x46
call fcn.00451698
push dword [ebp - 0x90]
push 0x45b58c
mov eax, dword [ebp - 0x20]
push dword [eax + 4]
lea eax, [ebp - 0x8c]
mov edx, 3
call fcn.00404788
mov eax, dword [ebp - 0x8c]
mov dx, 0x413
call fcn.00426dd4
jmp 0x45a3cd
cmp bx, 0x42d
jne 0x45ae06
mov dl, 1
mov eax, dword [0x4166d0]
call fcn.00403680
mov dword [ebp - 4], eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 2
jl 0x45a3cd
lea ecx, [ebp - 0x94]
mov edx, 0x45b658
mov eax, dword [ebp - 4]
call fcn.00418058
mov edx, dword [ebp - 0x94]
mov eax, dword [0x4617f4]
mov eax, dword [eax]
call fcn.00418888
lea ecx, [ebp - 0x98]
mov edx, 0x45b668
mov eax, dword [ebp - 4]
call fcn.00418058
mov edx, dword [ebp - 0x98]
mov eax, dword [0x461b20]
mov eax, dword [eax]
call fcn.00418888
mov eax, dword [ebp - 4]
call fcn.004036b0
call fcn.0042f684
jmp 0x45a3cd
cmp bx, 0x446
jne 0x45ae21
mov eax, dword [ebp - 0x10]
call fcn.004048c8
mov dl, 1
call fcn.004352d0
jmp 0x45a3cd
cmp bx, 0x415
jne 0x45ae73
mov edx, dword [ebp - 0x10]
mov eax, 0x45b4f4
call fcn.004049b0
test eax, eax
je 0x45a3cd
lea ecx, [ebp - 0x20]
mov edx, 0x45b4f4
mov eax, dword [ebp - 0x10]
call fcn.0043156c
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 4]
call fcn.00408648
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00408648
push eax
call sub.user32.dll_SetCursorPos
call fcn.004512f8
jmp 0x45a3cd
cmp bx, 0x414
jne 0x45aed1
mov edx, dword [ebp - 0x10]
mov eax, 0x45b4f4
call fcn.004049b0
test eax, eax
je 0x45a3cd
lea ecx, [ebp - 0x20]
mov edx, 0x45b4f4
mov eax, dword [ebp - 0x10]
call fcn.0043156c
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 4]
call fcn.00408648
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00408648
push eax
call sub.user32.dll_SetCursorPos
call fcn.004512f8
push 0x64
call sub.kernel32.dll_Sleep
call fcn.004512f8
jmp 0x45a3cd
cmp bx, 0x416
jne 0x45af23
mov edx, dword [ebp - 0x10]
mov eax, 0x45b4f4
call fcn.004049b0
test eax, eax
je 0x45a3cd
lea ecx, [ebp - 0x20]
mov edx, 0x45b4f4
mov eax, dword [ebp - 0x10]
call fcn.0043156c
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 4]
call fcn.00408648
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00408648
push eax
call sub.user32.dll_SetCursorPos
call fcn.004512d8
jmp 0x45a3cd
cmp bx, 0x421
jne 0x45afb1
mov eax, 0x45b58c
mov edx, dword [ebp - 0x10]
call fcn.004049b0
test eax, eax
je 0x45a3cd
mov edx, 0x45b58c
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0043156c
lea eax, [ebp - 0x9c]
call fcn.00433484
lea eax, [ebp - 0x9c]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
call fcn.004046d0
mov eax, dword [ebp - 0x9c]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx + 4]
call fcn.00432af4
lea eax, [ebp - 0xa0]
call fcn.00433484
lea eax, [ebp - 0xa0]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
call fcn.004046d0
mov eax, dword [ebp - 0xa0]
xor ecx, ecx
mov edx, 5
call fcn.004314a8
jmp 0x45a3cd
cmp bx, 0x420
jne 0x45afc5
mov eax, dword [ebp - 0x10]
call fcn.00427d18
jmp 0x45a3cd
cmp bx, 0x41f
jne 0x45afd9
mov eax, dword [ebp - 0x10]
call fcn.004294d4
jmp 0x45a3cd
cmp bx, 0x40f
jne 0x45b045
mov eax, dword [0x461b78]
call fcn.004043ec
mov eax, dword [0x461bb0]
cmp dword [eax], 0
jne 0x45b010
mov eax, dword [0x461c78]
mov byte [eax], 1
mov dl, 1
mov eax, dword [0x4166d0]
call fcn.00403680
mov edx, dword [0x461bb0]
mov dword [edx], eax
mov edx, dword [0x461bb0]
mov edx, dword [edx]
mov eax, dword [ebp - 0x10]
call fcn.0045121c
test al, al
je 0x45a3cd
mov eax, dword [0x461c78]
cmp byte [eax], 0
je 0x45a3cd
mov eax, 0x4517d4
call fcn.00432ec8
jmp 0x45a3cd
cmp bx, 0x412
jne 0x45b05e
mov eax, dword [0x461b78]
mov edx, dword [ebp - 0x10]
call fcn.00404440
jmp 0x45a3cd
cmp bx, 0x40e
jne 0x45b0ab
mov byte [0x4630e4], 0
mov dl, 1
mov eax, dword [0x4166d0]
call fcn.00403680
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
call fcn.0043dd34
lea edx, [ebp - 0xa4]
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
call dword [ecx + 0x1c]
mov eax, dword [ebp - 0xa4]
mov edx, ebx
call fcn.00426dd4
mov eax, dword [ebp - 8]
call fcn.004036b0
jmp 0x45a3cd
cmp bx, 0x3ec
jne 0x45b0c4
or edx, 0xffffffff
mov eax, 0x45b680
call fcn.00432ee0
jmp 0x45a3cd
cmp bx, 0x40a
jne 0x45b0ef
mov eax, dword [0x461a0c]
mov byte [eax], 0
mov eax, dword [0x461ae0]
mov edx, dword [ebp - 0x10]
call fcn.00404440
mov eax, 0x458770
call fcn.00432ec8
jmp 0x45a3cd
cmp bx, 0x41c
jne 0x45b115
lea eax, [ebp - 0xa8]
call fcn.0042a89c
mov eax, dword [ebp - 0xa8]
mov dx, 0x41c
call fcn.00426dd4
jmp 0x45a3cd
cmp bx, 0x3fe
jne 0x45b129
mov eax, dword [0x461a0c]
mov byte [eax], 1
jmp 0x45a3cd
cmp bx, 0x403
jne 0x45b147
mov eax, dword [0x461a0c]
mov byte [eax], 0
mov eax, 0x4588e4
call fcn.00432ec8
jmp 0x45a3cd
cmp bx, 0x3fc
je 0x45b155
cmp bx, 0x3fd
jne 0x45b164
mov edx, ebx
mov eax, dword [ebp - 0x10]
call fcn.00458f98
jmp 0x45a3cd
cmp bx, 0x3ff
jne 0x45b1dc
mov dl, 1
mov eax, dword [0x4166d0]
call fcn.00403680
mov dword [ebp - 0xc], eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xc]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov eax, dword [ebp - 0xc]
mov edx, dword [eax]
call dword [edx + 0x14]
mov esi, eax
dec esi
test esi, esi
jl 0x45b1cf
inc esi
mov dword [ebp - 0x1c], 0
lea ecx, [ebp - 0xb0]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xb0]
lea edx, [ebp - 0xac]
call fcn.004331d0
mov eax, dword [ebp - 0xac]
call fcn.0042cb8c
inc dword [ebp - 0x1c]
dec esi
jne 0x45b19c
mov eax, dword [ebp - 0xc]
call fcn.004036b0
jmp 0x45a3cd
cmp bx, 0x406
jne 0x45b1f5
mov edx, 5
mov eax, dword [ebp - 0x10]
call fcn.004313f8
jmp 0x45a3cd
cmp bx, 0x402
jne 0x45b209
mov eax, dword [ebp - 0x10]
call fcn.00458a9c
jmp 0x45a3cd
cmp bx, 0x44b
jne 0x45b26d
lea eax, [ebp - 0xbc]
mov edx, dword [ebp - 0x10]
call fcn.00404c0c
mov eax, dword [ebp - 0xbc]
lea edx, [ebp - 0xb8]
call fcn.00459bd8
push dword [ebp - 0xb8]
push 0x45b58c
lea eax, [ebp - 0xc0]
call fcn.00459cbc
push dword [ebp - 0xc0]
lea eax, [ebp - 0xb4]
mov edx, 3
call fcn.00404788
mov eax, dword [ebp - 0xb4]
mov edx, ebx
call fcn.00426dd4
jmp 0x45a3cd
cmp bx, 0x3f2
jne 0x45b2a5
lea eax, [ebp - 0xc8]
mov edx, dword [ebp - 0x10]
call fcn.00404c0c
mov eax, dword [ebp - 0xc8]
lea edx, [ebp - 0xc4]
call fcn.00459bd8
mov eax, dword [ebp - 0xc4]
mov edx, ebx
call fcn.00426dd4
jmp 0x45a3cd
cmp bx, 0x3f0
je 0x45b2b3
cmp bx, 0x3f3
jne 0x45b2df
mov eax, dword [0x461a0c]
mov byte [eax], 0
mov eax, dword [0x461ab4]
mov word [eax], bx
mov eax, dword [0x461adc]
mov edx, dword [ebp - 0x10]
call fcn.00404440
mov eax, 0x458824
call fcn.00432ec8
jmp 0x45a3cd
cmp bx, 0x3ef
jne 0x45b3b4
mov byte [0x4630e4], 0
lea eax, [ebp - 0xd0]
call fcn.00459cbc
push dword [ebp - 0xd0]
push 0x45b58c
lea edx, [ebp - 0xd4]
mov eax, 0x45b690
call fcn.00459618
push dword [ebp - 0xd4]
push 0x45b58c
lea eax, [ebp - 0xd8]
call fcn.0042ca9c
push dword [ebp - 0xd8]
push 0x45b58c
lea eax, [ebp - 0xdc]
call fcn.0042cd70
push dword [ebp - 0xdc]
push 0x45b58c
lea eax, [ebp - 0xe0]
call fcn.00432e04
push dword [ebp - 0xe0]
push 0x45b58c
lea eax, [ebp - 0xe4]
call fcn.00432d3c
push dword [ebp - 0xe4]
push 0x45b58c
lea eax, [ebp - 0xe8]
call fcn.00432088
push dword [ebp - 0xe8]
push 0x45b58c
lea eax, [ebp - 0xcc]
mov edx, 0xe
call fcn.00404788
mov eax, dword [ebp - 0xcc]
mov dx, 0x3ef
call fcn.00426dd4
jmp 0x45a3cd
cmp bx, 0x44a
jne 0x45b3f5
mov eax, 0x45b58c
mov edx, dword [ebp - 0x10]
call fcn.004049b0
test eax, eax
jle 0x45a3cd
mov edx, 0x45b58c
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.0043156c
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00457398
jmp 0x45a3cd
cmp bx, 0x43e
jne 0x45a3cd
mov dl, 1
mov eax, dword [0x4166d0]
call fcn.00403680
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
call fcn.00455fd0
mov eax, dword [ebp - 8]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x45b443
lea edx, [ebp - 0xec]
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
call dword [ecx + 0x1c]
mov eax, dword [ebp - 0xec]
mov dx, 0x43e
call fcn.00426dd4
mov eax, dword [ebp - 8]
call fcn.004036b0
jmp 0x45a3cd