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

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x20
push 0
push 0
dec ecx
jne 0x45f394
push ecx
push ebx
push esi
xor eax, eax
push ebp
push 0x460632
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, 0x45f198
call fcn.00436230
mov byte [0x468118], 1
mov eax, dword [0x466dfc]
cmp dword [eax], 0
jne 0x45f3cc
call fcn.0045f2c0
lea edx, [ebp - 0x24]
xor eax, eax
call fcn.004366e0
push dword [ebp - 0x24]
push 0x46064c
lea eax, [ebp - 0x28]
call fcn.00432e6c
push dword [ebp - 0x28]
push 0x46064c
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.004085d0
push dword [ebp - 0x2c]
push 0x46064c
lea eax, [ebp - 0x30]
call fcn.00433648
push dword [ebp - 0x30]
push 0x46064c
mov eax, dword [0x466b98]
push dword [eax]
push 0x460658
lea eax, [ebp - 0x18]
mov edx, 0xa
call fcn.0040476c
lea ecx, [ebp - 0x10]
mov dx, 0x3e8
mov eax, dword [ebp - 0x18]
call fcn.004388b0
cmp dword [ebp - 0x10], 0
je 0x45f45f
mov edx, dword [ebp - 0x10]
mov eax, 0x460664
call fcn.00404994
test eax, eax
jle 0x45f480
xor eax, eax
mov dword [0x468114], eax
call fcn.0045f2c0
lea ecx, [ebp - 0x10]
mov dx, 0x3e8
mov eax, dword [ebp - 0x18]
call fcn.004388b0
cmp dword [ebp - 0x10], 0
je 0x45f466
lea eax, [ebp - 0x10]
call fcn.004387f4
mov ebx, eax
cmp bx, 0x3e8
jne 0x45f50f
cmp byte [0x468118], 0
je 0x45f3bd
mov edx, dword [ebp - 0x10]
mov eax, 0x46064c
call fcn.00404994
test eax, eax
jle 0x45f3bd
lea ecx, [ebp - 0x20]
mov edx, 0x46064c
mov eax, dword [ebp - 0x10]
call fcn.004348d4
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00435d68
test al, al
je 0x45f3bd
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 4]
call fcn.00435d68
test al, al
je 0x45f3bd
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 4]
call fcn.00408620
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00408620
pop edx
call fcn.0040dc78
push eax
call sub.kernel32.dll_Sleep
jmp 0x45f3bd
cmp bx, 0x457
jne 0x45f523
mov eax, dword [ebp - 0x10]
call fcn.00438c30
jmp 0x45f3bd
cmp bx, 0x456
jne 0x45f546
mov eax, dword [0x466b28]
mov edx, dword [ebp - 0x10]
call fcn.00404440
mov eax, 0x438d54
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x429
jne 0x45f569
mov eax, dword [0x466ad8]
mov edx, dword [ebp - 0x10]
call fcn.00404440
mov eax, 0x45c258
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x44f
jne 0x45f57d
mov eax, dword [ebp - 0x10]
call fcn.004570c0
jmp 0x45f3bd
cmp bx, 0x44e
jne 0x45f5a6
mov eax, dword [0x466d3c]
cmp dword [eax], 0
jbe 0x45f3bd
push 0
mov eax, dword [0x466d3c]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_TerminateThread
jmp 0x45f3bd
cmp bx, 0x454
jne 0x45f5ba
mov eax, dword [ebp - 0x10]
call fcn.00439af8
jmp 0x45f3bd
cmp bx, 0x450
jne 0x45f5ce
mov eax, dword [ebp - 0x10]
call fcn.00439c98
jmp 0x45f3bd
cmp bx, 0x449
jne 0x45f5e2
mov eax, dword [ebp - 0x10]
call fcn.00439984
jmp 0x45f3bd
cmp bx, 0x444
jne 0x45f61d
cmp dword [0x468110], 0
jbe 0x45f5fc
mov eax, dword [0x468110]
call fcn.00435d3c
push 0
push 1
lea eax, [ebp - 0x10]
call fcn.00404904
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0042bcf0
mov dword [0x468110], eax
jmp 0x45f3bd
cmp bx, 0x418
jne 0x45f64a
mov eax, dword [ebp - 0x10]
call fcn.00435d68
test al, al
je 0x45f3bd
mov eax, dword [ebp - 0x10]
call fcn.00408620
mov edx, dword [0x466bc4]
mov word [edx], ax
jmp 0x45f3bd
cmp bx, 0x442
jne 0x45f67b
mov eax, dword [0x466a60]
cmp byte [eax], 0
je 0x45f3bd
push 0
push 1
lea eax, [ebp - 0x10]
call fcn.00404904
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0042bcf0
jmp 0x45f3bd
cmp bx, 0x441
jne 0x45f8a3
lea ecx, [ebp - 0x34]
mov eax, dword [0x466aec]
mov eax, dword [eax]
mov edx, 0x460670
call fcn.004162a0
mov eax, dword [ebp - 0x34]
call fcn.00437ee0
test al, al
je 0x45f3bd
lea eax, [ebp - 0x38]
call fcn.00433648
mov eax, dword [ebp - 0x38]
mov edx, 0x46067c
call fcn.004047f8
je 0x45f3bd
lea edx, [ebp - 0x3c]
mov eax, 4
call fcn.00435f54
mov eax, dword [ebp - 0x3c]
push eax
lea eax, [ebp - 0x40]
call fcn.004367bc
lea eax, [ebp - 0x40]
mov edx, 0x460688
call fcn.004046b4
mov eax, dword [ebp - 0x40]
pop edx
call fcn.00435e5c
lea ecx, [ebp - 0x44]
mov eax, dword [0x466aec]
mov eax, dword [eax]
mov edx, 0x460698
call fcn.004162a0
mov eax, dword [ebp - 0x44]
call fcn.00437ee0
test al, al
je 0x45f79f
lea eax, [ebp - 0x48]
call fcn.004367bc
lea eax, [ebp - 0x48]
mov edx, 0x4606a4
call fcn.004046b4
mov eax, dword [ebp - 0x48]
push eax
mov edx, dword [0x466c68]
mov edx, dword [edx]
lea eax, [ebp - 0x4c]
mov ecx, 0x4606a4
call fcn.004046f8
mov eax, dword [ebp - 0x4c]
pop edx
call fcn.00434210
mov eax, dword [0x466c68]
push dword [eax]
lea edx, [ebp - 0x54]
mov eax, 0x4606bc
call fcn.004369c8
push dword [ebp - 0x54]
push 0x4606c8
lea eax, [ebp - 0x50]
mov edx, 3
call fcn.0040476c
mov eax, dword [ebp - 0x50]
push eax
lea eax, [ebp - 0x58]
call fcn.004367bc
lea eax, [ebp - 0x58]
mov edx, 0x4606d8
call fcn.004046b4
mov edx, dword [ebp - 0x58]
pop eax
call fcn.00434210
jmp 0x45f821
lea eax, [ebp - 0x5c]
call fcn.004367bc
lea eax, [ebp - 0x5c]
mov edx, 0x4606ec
call fcn.004046b4
mov eax, dword [ebp - 0x5c]
push eax
mov edx, dword [0x466c68]
mov edx, dword [edx]
lea eax, [ebp - 0x60]
mov ecx, 0x4606ec
call fcn.004046f8
mov eax, dword [ebp - 0x60]
pop edx
call fcn.00434210
mov eax, dword [0x466c68]
push dword [eax]
lea edx, [ebp - 0x68]
mov eax, 0x4606bc
call fcn.004369c8
push dword [ebp - 0x68]
push 0x460700
lea eax, [ebp - 0x64]
mov edx, 3
call fcn.0040476c
mov eax, dword [ebp - 0x64]
push eax
lea eax, [ebp - 0x6c]
call fcn.004367bc
lea eax, [ebp - 0x6c]
mov edx, 0x460710
call fcn.004046b4
mov edx, dword [ebp - 0x6c]
pop eax
call fcn.00434210
lea eax, [ebp - 0x70]
call fcn.004367bc
lea eax, [ebp - 0x70]
mov edx, 0x460724
call fcn.004046b4
mov eax, dword [ebp - 0x70]
push eax
mov edx, dword [0x466c68]
mov edx, dword [edx]
lea eax, [ebp - 0x74]
mov ecx, 0x460724
call fcn.004046f8
mov eax, dword [ebp - 0x74]
pop edx
call fcn.00434210
push 0
push 1
lea eax, [ebp - 0x10]
call fcn.00404904
mov ecx, eax
xor edx, edx
xor eax, eax
call fcn.0042bcf0
push 0xbb8
call sub.kernel32.dll_Sleep
push 0
push 1
lea eax, [ebp - 0x10]
call fcn.00404904
push eax
lea eax, [ebp - 0x78]
call fcn.0042ccd0
mov eax, dword [ebp - 0x78]
xor edx, edx
pop ecx
call fcn.0042bcf0
call fcn.00436a60
jmp 0x45f3bd
cmp bx, 0x440
jne 0x45f8f1
mov edx, dword [ebp - 0x10]
mov eax, 0x460738
call fcn.00404994
test eax, eax
jle 0x45f3bd
mov edx, 0x460738
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.004348d4
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 8]
call fcn.00408620
mov ecx, eax
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00434028
jmp 0x45f3bd
cmp bx, 0x43c
jne 0x45f902
call fcn.004301f0
jmp 0x45f3bd
cmp bx, 0x43b
jne 0x45f913
call fcn.00430230
jmp 0x45f3bd
cmp bx, 0x43a
jne 0x45f924
call fcn.00430294
jmp 0x45f3bd
cmp bx, 0x439
jne 0x45f937
xor eax, eax
call fcn.004302d8
jmp 0x45f3bd
cmp bx, 0x437
jne 0x45f94d
mov eax, 0x45b69c
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x438
jne 0x45f963
mov eax, 0x45b1e4
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x435
jne 0x45f97f
mov eax, dword [0x466b00]
mov byte [eax], 0
mov eax, dword [0x466cd4]
mov byte [eax], 0
jmp 0x45f3bd
cmp bx, 0x434
jne 0x45f993
mov eax, dword [0x466b00]
mov byte [eax], 0
jmp 0x45f3bd
cmp bx, 0x431
jne 0x45f9b7
mov eax, dword [0x466b00]
cmp byte [eax], 0
jne 0x45f3bd
mov eax, 0x45c9ec
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x433
jne 0x45f9cb
mov eax, dword [0x466cd4]
mov byte [eax], 0
jmp 0x45f3bd
cmp bx, 0x432
jne 0x45f9eb
lea eax, [ebp - 0x7c]
call fcn.0045c888
mov eax, dword [ebp - 0x7c]
mov dx, 0x432
call fcn.00438a80
jmp 0x45f3bd
cmp bx, 0x430
jne 0x45fa2f
mov eax, dword [ebp - 0x10]
call fcn.00435d68
test al, al
je 0x45f3bd
mov eax, dword [0x466cd4]
cmp byte [eax], 0
jne 0x45f3bd
mov eax, dword [ebp - 0x10]
call fcn.00408620
mov edx, dword [0x466944]
mov dword [edx], eax
mov eax, 0x45cb18
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x42f
jne 0x45fa4f
lea eax, [ebp - 0x80]
call fcn.0045cc10
mov eax, dword [ebp - 0x80]
mov dx, 0x42f
call fcn.00438a80
jmp 0x45f3bd
cmp bx, 0x42e
jne 0x45fa72
mov eax, dword [0x466ccc]
mov edx, dword [ebp - 0x10]
call fcn.00404440
mov eax, 0x45c148
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x42b
jne 0x45fab6
lea eax, [ebp - 0x84]
call fcn.00433648
mov eax, dword [ebp - 0x84]
mov edx, 0x46067c
call fcn.004047f8
jne 0x45f3bd
mov eax, dword [0x466ca8]
mov edx, dword [ebp - 0x10]
call fcn.00404440
mov eax, 0x45ee40
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x3eb
jne 0x45fada
lea eax, [ebp - 0x88]
call fcn.004332e4
mov eax, dword [ebp - 0x88]
mov edx, ebx
call fcn.00438a80
jmp 0x45f3bd
cmp bx, 0x42a
jne 0x45fb58
mov dl, 1
mov eax, 0x46074c
call fcn.00435bec
lea eax, [ebp - 0x90]
call fcn.0042ccd0
mov eax, dword [ebp - 0x90]
lea edx, [ebp - 0x8c]
call fcn.00408bc4
mov eax, dword [ebp - 0x8c]
mov dl, 1
call fcn.00435bec
push 0x46075c
mov eax, dword [0x466c68]
push dword [eax]
push 0x4607a0
mov eax, dword [0x466c68]
push dword [eax]
lea eax, [ebp - 0x94]
mov edx, 4
call fcn.0040476c
mov edx, dword [ebp - 0x94]
mov eax, 0x4607b8
call fcn.00434628
call fcn.00436a60
jmp 0x45f3bd
cmp bx, 0x428
jne 0x45fbb4
mov edx, 0x460738
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.004348d4
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00435d68
test al, al
je 0x45f3bd
push 0
lea edx, [ebp - 0x98]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 4]
call fcn.0042db00
mov eax, dword [ebp - 0x98]
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00408620
mov ecx, eax
xor eax, eax
pop edx
call fcn.004303ac
jmp 0x45f3bd
cmp bx, 0x427
jne 0x45fbe4
mov edx, 0x460738
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.004348d4
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.004303ac
jmp 0x45f3bd
cmp bx, 0x426
jne 0x45fc2d
mov edx, 0x460738
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.004348d4
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00435d68
test al, al
je 0x45f3bd
push 0
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00408620
mov ecx, eax
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 4]
xor eax, eax
call fcn.004303ac
jmp 0x45f3bd
cmp bx, 0x425
jne 0x45fc59
mov edx, 0x460738
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.004348d4
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.0042defc
jmp 0x45f3bd
cmp bx, 0x443
jne 0x45fccf
mov edx, 0x460738
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.004348d4
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.00408164
push 0
push 1
lea eax, [ebp - 0x10]
call fcn.00404904
push eax
push 0x4607c8
push dword [ebp - 0x14]
push 0x4607d4
mov eax, dword [ebp - 0x20]
push dword [eax + 8]
lea eax, [ebp - 0x9c]
mov edx, 4
call fcn.0040476c
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x14]
pop ecx
call fcn.0042bcf0
jmp 0x45f3bd
cmp bx, 0x424
jne 0x45fd1e
mov edx, 0x460738
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.004348d4
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.00408164
push 0
push 1
lea eax, [ebp - 0x10]
call fcn.00404904
mov ecx, eax
xor edx, edx
mov eax, dword [ebp - 0x14]
call fcn.0042bcf0
jmp 0x45f3bd
cmp bx, 0x423
jne 0x45fd37
mov eax, dword [ebp - 0x10]
call fcn.00408620
call fcn.00435d3c
jmp 0x45f3bd
cmp bx, 0x422
jne 0x45fd64
mov byte [0x468118], 0
lea eax, [ebp - 0xa0]
call fcn.0042d1fc
mov eax, dword [ebp - 0xa0]
mov dx, 0x422
call fcn.00438a80
jmp 0x45f3bd
cmp bx, 0x41b
jne 0x45fd9d
push 0
mov eax, dword [0x466cdc]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_TerminateThread
push 0
mov eax, dword [0x4669a8]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_TerminateThread
push 0
mov eax, dword [0x466cf4]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_TerminateProcess
jmp 0x45f3bd
cmp bx, 0x41a
jne 0x45fdb6
mov eax, dword [0x466c10]
mov edx, dword [ebp - 0x10]
call fcn.00404440
jmp 0x45f3bd
cmp bx, 0x445
jne 0x45fdf8
mov eax, dword [0x466e2c]
mov edx, 0x4607b8
call fcn.00404440
mov byte [0x468118], 0
mov dx, 0x419
mov eax, 0x4607e0
call fcn.00438a80
mov eax, 0x45d064
call fcn.00436230
mov edx, dword [0x4669a8]
mov dword [edx], eax
jmp 0x45f3bd
cmp bx, 0x419
jne 0x45fe3a
mov eax, dword [0x466e2c]
mov edx, 0x4607ec
call fcn.00404440
mov byte [0x468118], 0
mov dx, 0x419
mov eax, 0x4607e0
call fcn.00438a80
mov eax, 0x45d064
call fcn.00436230
mov edx, dword [0x4669a8]
mov dword [edx], eax
jmp 0x45f3bd
cmp bx, 0x413
jne 0x45feaf
mov edx, dword [ebp - 0x10]
mov eax, 0x46064c
call fcn.00404994
test eax, eax
je 0x45f3bd
lea ecx, [ebp - 0x20]
mov edx, 0x46064c
mov eax, dword [ebp - 0x10]
call fcn.004348d4
lea ecx, [ebp - 0xa8]
mov eax, dword [ebp - 0x20]
mov edx, dword [eax]
mov ax, 0x46
call fcn.00456614
push dword [ebp - 0xa8]
push 0x460738
mov eax, dword [ebp - 0x20]
push dword [eax + 4]
lea eax, [ebp - 0xa4]
mov edx, 3
call fcn.0040476c
mov eax, dword [ebp - 0xa4]
mov dx, 0x413
call fcn.00438a80
jmp 0x45f3bd
cmp bx, 0x42d
jne 0x45ff41
mov dl, 1
mov eax, dword [0x414918]
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 0x45f3bd
lea ecx, [ebp - 0xac]
mov edx, 0x460804
mov eax, dword [ebp - 4]
call fcn.004162a0
mov edx, dword [ebp - 0xac]
mov eax, dword [0x4669a0]
mov eax, dword [eax]
call fcn.00416ad0
lea ecx, [ebp - 0xb0]
mov edx, 0x460814
mov eax, dword [ebp - 4]
call fcn.004162a0
mov edx, dword [ebp - 0xb0]
mov eax, dword [0x466ce4]
mov eax, dword [eax]
call fcn.00416ad0
mov eax, dword [ebp - 4]
call fcn.004036b0
call fcn.00438024
jmp 0x45f3bd
cmp bx, 0x446
jne 0x45ff5c
mov eax, dword [ebp - 0x10]
call fcn.004048ac
mov dl, 1
call fcn.0043a24c
jmp 0x45f3bd
cmp bx, 0x415
jne 0x45ffae
mov edx, dword [ebp - 0x10]
mov eax, 0x46064c
call fcn.00404994
test eax, eax
je 0x45f3bd
lea ecx, [ebp - 0x20]
mov edx, 0x46064c
mov eax, dword [ebp - 0x10]
call fcn.004348d4
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 4]
call fcn.00408620
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00408620
push eax
call sub.user32.dll_SetCursorPos
call fcn.00456274
jmp 0x45f3bd
cmp bx, 0x414
jne 0x46000c
mov edx, dword [ebp - 0x10]
mov eax, 0x46064c
call fcn.00404994
test eax, eax
je 0x45f3bd
lea ecx, [ebp - 0x20]
mov edx, 0x46064c
mov eax, dword [ebp - 0x10]
call fcn.004348d4
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 4]
call fcn.00408620
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00408620
push eax
call sub.user32.dll_SetCursorPos
call fcn.00456274
push 0x64
call sub.kernel32.dll_Sleep
call fcn.00456274
jmp 0x45f3bd
cmp bx, 0x416
jne 0x46005e
mov edx, dword [ebp - 0x10]
mov eax, 0x46064c
call fcn.00404994
test eax, eax
je 0x45f3bd
lea ecx, [ebp - 0x20]
mov edx, 0x46064c
mov eax, dword [ebp - 0x10]
call fcn.004348d4
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 4]
call fcn.00408620
push eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.00408620
push eax
call sub.user32.dll_SetCursorPos
call fcn.00456254
jmp 0x45f3bd
cmp bx, 0x421
jne 0x4600ec
mov eax, 0x460738
mov edx, dword [ebp - 0x10]
call fcn.00404994
test eax, eax
je 0x45f3bd
mov edx, 0x460738
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.004348d4
lea eax, [ebp - 0xb4]
call fcn.004367f4
lea eax, [ebp - 0xb4]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
call fcn.004046b4
mov eax, dword [ebp - 0xb4]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx + 4]
call fcn.00435e5c
lea eax, [ebp - 0xb8]
call fcn.004367f4
lea eax, [ebp - 0xb8]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
call fcn.004046b4
mov eax, dword [ebp - 0xb8]
xor ecx, ecx
mov edx, 5
call fcn.00434810
jmp 0x45f3bd
cmp bx, 0x420
jne 0x460100
mov eax, dword [ebp - 0x10]
call fcn.0042b83c
jmp 0x45f3bd
cmp bx, 0x41f
jne 0x460114
mov eax, dword [ebp - 0x10]
call fcn.0042ceec
jmp 0x45f3bd
cmp bx, 0x40f
jne 0x460180
mov eax, dword [0x466d40]
call fcn.004043ec
mov eax, dword [0x466d78]
cmp dword [eax], 0
jne 0x46014b
mov eax, dword [0x466e44]
mov byte [eax], 1
mov dl, 1
mov eax, dword [0x414918]
call fcn.00403680
mov edx, dword [0x466d78]
mov dword [edx], eax
mov edx, dword [0x466d78]
mov edx, dword [edx]
mov eax, dword [ebp - 0x10]
call fcn.00456198
test al, al
je 0x45f3bd
mov eax, dword [0x466e44]
cmp byte [eax], 0
je 0x45f3bd
mov eax, 0x456750
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x412
jne 0x460199
mov eax, dword [0x466d40]
mov edx, dword [ebp - 0x10]
call fcn.00404440
jmp 0x45f3bd
cmp bx, 0x40e
jne 0x4601e6
mov byte [0x468118], 0
mov dl, 1
mov eax, dword [0x414918]
call fcn.00403680
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
call fcn.00442cb0
lea edx, [ebp - 0xbc]
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
call dword [ecx + 0x1c]
mov eax, dword [ebp - 0xbc]
mov edx, ebx
call fcn.00438a80
mov eax, dword [ebp - 8]
call fcn.004036b0
jmp 0x45f3bd
cmp bx, 0x3ec
jne 0x4601ff
or edx, 0xffffffff
mov eax, 0x46082c
call fcn.00436248
jmp 0x45f3bd
cmp bx, 0x40a
jne 0x46022a
mov eax, dword [0x466bcc]
mov byte [eax], 0
mov eax, dword [0x466ca4]
mov edx, dword [ebp - 0x10]
call fcn.00404440
mov eax, 0x45d73c
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x41c
jne 0x460250
lea eax, [ebp - 0xc0]
call fcn.0042e4f4
mov eax, dword [ebp - 0xc0]
mov dx, 0x41c
call fcn.00438a80
jmp 0x45f3bd
cmp bx, 0x3fe
jne 0x460264
mov eax, dword [0x466bcc]
mov byte [eax], 1
jmp 0x45f3bd
cmp bx, 0x403
jne 0x460282
mov eax, dword [0x466bcc]
mov byte [eax], 0
mov eax, 0x45d8b0
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x3fc
je 0x460290
cmp bx, 0x3fd
jne 0x4602bc
mov eax, dword [0x466bcc]
mov byte [eax], 0
mov eax, dword [0x466a80]
mov word [eax], bx
mov eax, dword [0x466abc]
mov edx, dword [ebp - 0x10]
call fcn.00404440
mov eax, 0x45df64
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x3ff
jne 0x460334
mov dl, 1
mov eax, dword [0x414918]
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 0x460327
inc esi
mov dword [ebp - 0x1c], 0
lea ecx, [ebp - 0xc8]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0xc]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0xc8]
lea edx, [ebp - 0xc4]
call fcn.00436540
mov eax, dword [ebp - 0xc4]
call fcn.0042fee8
inc dword [ebp - 0x1c]
dec esi
jne 0x4602f4
mov eax, dword [ebp - 0xc]
call fcn.004036b0
jmp 0x45f3bd
cmp bx, 0x406
jne 0x46034d
mov edx, 5
mov eax, dword [ebp - 0x10]
call fcn.00434760
jmp 0x45f3bd
cmp bx, 0x402
jne 0x460361
mov eax, dword [ebp - 0x10]
call fcn.0045da68
jmp 0x45f3bd
cmp bx, 0x44b
jne 0x4603c5
lea eax, [ebp - 0xd4]
mov edx, dword [ebp - 0x10]
call fcn.00404c1c
mov eax, dword [ebp - 0xd4]
lea edx, [ebp - 0xd0]
call fcn.0045ebb8
push dword [ebp - 0xd0]
push 0x460738
lea eax, [ebp - 0xd8]
call fcn.0045ec9c
push dword [ebp - 0xd8]
lea eax, [ebp - 0xcc]
mov edx, 3
call fcn.0040476c
mov eax, dword [ebp - 0xcc]
mov edx, ebx
call fcn.00438a80
jmp 0x45f3bd
cmp bx, 0x3f2
jne 0x4603fd
lea eax, [ebp - 0xe0]
mov edx, dword [ebp - 0x10]
call fcn.00404c1c
mov eax, dword [ebp - 0xe0]
lea edx, [ebp - 0xdc]
call fcn.0045ebb8
mov eax, dword [ebp - 0xdc]
mov edx, ebx
call fcn.00438a80
jmp 0x45f3bd
cmp bx, 0x3f0
je 0x46040b
cmp bx, 0x3f3
jne 0x460437
mov eax, dword [0x466bcc]
mov byte [eax], 0
mov eax, dword [0x466c74]
mov word [eax], bx
mov eax, dword [0x466ca0]
mov edx, dword [ebp - 0x10]
call fcn.00404440
mov eax, 0x45d7f0
call fcn.00436230
jmp 0x45f3bd
cmp bx, 0x3ef
jne 0x46050c
mov byte [0x468118], 0
lea eax, [ebp - 0xe8]
call fcn.0045ec9c
push dword [ebp - 0xe8]
push 0x460738
lea edx, [ebp - 0xec]
mov eax, 0x46083c
call fcn.0045e5f8
push dword [ebp - 0xec]
push 0x460738
lea eax, [ebp - 0xf0]
call fcn.0042fdf8
push dword [ebp - 0xf0]
push 0x460738
lea eax, [ebp - 0xf4]
call fcn.004300cc
push dword [ebp - 0xf4]
push 0x460738
lea eax, [ebp - 0xf8]
call fcn.0043616c
push dword [ebp - 0xf8]
push 0x460738
lea eax, [ebp - 0xfc]
call fcn.004360a4
push dword [ebp - 0xfc]
push 0x460738
lea eax, [ebp - 0x100]
call fcn.004353f0
push dword [ebp - 0x100]
push 0x460738
lea eax, [ebp - 0xe4]
mov edx, 0xe
call fcn.0040476c
mov eax, dword [ebp - 0xe4]
mov dx, 0x3ef
call fcn.00438a80
jmp 0x45f3bd
cmp bx, 0x44a
jne 0x46054d
mov eax, 0x460738
mov edx, dword [ebp - 0x10]
call fcn.00404994
test eax, eax
jle 0x45f3bd
mov edx, 0x460738
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 0x10]
call fcn.004348d4
mov eax, dword [ebp - 0x20]
mov edx, dword [eax + 4]
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
call fcn.0045c314
jmp 0x45f3bd
cmp bx, 0x43e
jne 0x45f3bd
mov dl, 1
mov eax, dword [0x414918]
call fcn.00403680
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
call fcn.0045af4c
mov eax, dword [ebp - 8]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x46059b
lea edx, [ebp - 0x104]
mov eax, dword [ebp - 8]
mov ecx, dword [eax]
call dword [ecx + 0x1c]
mov eax, dword [ebp - 0x104]
mov dx, 0x43e
call fcn.00438a80
mov eax, dword [ebp - 8]
call fcn.004036b0
jmp 0x45f3bd