Function at 0x453060
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x794a99
mov eax, dword fs:[0]
push eax
sub esp, 0x160
mov eax, dword [0x867e6c]
xor eax, esp
mov dword [esp + 0x158], eax
push ebx
push esi
push edi
mov eax, dword [0x867e6c]
xor eax, esp
push eax
lea eax, [esp + 0x170]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov esi, ecx
lea ecx, [esp + 0x84]
push ecx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x64], eax
call fcn.00463cf0
xor ebx, ebx
mov dword [esp + 0x178], ebx
push 3
mov edi, 0xf
push 0x81db8c
lea ecx, [esp + 0x11c]
mov dword [esp + 0x134], edi
mov dword [esp + 0x130], ebx
mov byte [esp + 0x120], bl
call fcn.004016e0
add esi, 0x8c0
push esi
lea edx, [esp + 0x118]
push edx
lea eax, [esp + 0x24]
push eax
mov byte [esp + 0x184], 1
call fcn.00456db0
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x88]
push edx
mov byte [esp + 0x180], 2
call fcn.00456c60
mov esi, 0x10
cmp dword [esp + 0x50], esi
jb 0x453143
mov eax, dword [esp + 0x3c]
push eax
call fcn.006441c7
add esp, 4
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
cmp dword [esp + 0x34], esi
jb 0x453162
mov ecx, dword [esp + 0x20]
push ecx
call fcn.006441c7
add esp, 4
mov byte [esp + 0x178], bl
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
cmp dword [esp + 0x12c], esi
jb 0x45318e
mov edx, dword [esp + 0x118]
push edx
call fcn.006441c7
add esp, 4
push 8
push str.ProdName
lea ecx, [esp + 0x11c]
mov dword [esp + 0x134], edi
mov dword [esp + 0x130], ebx
mov byte [esp + 0x120], bl
call fcn.004016e0
mov eax, dword [esp + 0x18]
add eax, 0x5c
push eax
lea ecx, [esp + 0x118]
push ecx
lea edx, [esp + 0x24]
push edx
mov byte [esp + 0x184], 3
call fcn.00456db0
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x88]
push edx
mov byte [esp + 0x180], 4
call fcn.00456c60
cmp dword [esp + 0x50], esi
jb 0x453205
mov eax, dword [esp + 0x3c]
push eax
call fcn.006441c7
add esp, 4
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
cmp dword [esp + 0x34], esi
jb 0x453224
mov ecx, dword [esp + 0x20]
push ecx
call fcn.006441c7
add esp, 4
mov byte [esp + 0x178], bl
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
cmp dword [esp + 0x12c], esi
jb 0x453250
mov edx, dword [esp + 0x118]
push edx
call fcn.006441c7
add esp, 4
push 7
push str.Version
lea ecx, [esp + 0x11c]
mov dword [esp + 0x134], edi
mov dword [esp + 0x130], ebx
mov byte [esp + 0x120], bl
call fcn.004016e0
mov eax, dword [esp + 0x18]
add eax, 0x3d8
push eax
lea ecx, [esp + 0x118]
push ecx
lea edx, [esp + 0x24]
push edx
mov byte [esp + 0x184], 5
call fcn.00456db0
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x88]
push edx
mov byte [esp + 0x180], 6
call fcn.00456c60
cmp dword [esp + 0x50], esi
jb 0x4532c9
mov eax, dword [esp + 0x3c]
push eax
call fcn.006441c7
add esp, 4
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
cmp dword [esp + 0x34], esi
jb 0x4532e8
mov ecx, dword [esp + 0x20]
push ecx
call fcn.006441c7
add esp, 4
mov byte [esp + 0x178], bl
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
cmp dword [esp + 0x12c], esi
jb 0x453314
mov edx, dword [esp + 0x118]
push edx
call fcn.006441c7
add esp, 4
push 9
push str.Variation
lea ecx, [esp + 0x11c]
mov dword [esp + 0x134], edi
mov dword [esp + 0x130], ebx
mov byte [esp + 0x120], bl
call fcn.004016e0
mov eax, dword [esp + 0x18]
add eax, 0x8a0
push eax
lea ecx, [esp + 0x118]
push ecx
lea edx, [esp + 0x24]
push edx
mov byte [esp + 0x184], 7
call fcn.00456db0
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x88]
push edx
mov byte [esp + 0x180], 8
call fcn.00456c60
cmp dword [esp + 0x50], esi
jb 0x45338d
mov eax, dword [esp + 0x3c]
push eax
call fcn.006441c7
add esp, 4
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
cmp dword [esp + 0x34], esi
jb 0x4533ac
mov ecx, dword [esp + 0x20]
push ecx
call fcn.006441c7
add esp, 4
mov byte [esp + 0x178], bl
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
cmp dword [esp + 0x12c], esi
jb 0x4533d8
mov edx, dword [esp + 0x118]
push edx
call fcn.006441c7
add esp, 4
push 7
push str.ReferId
lea ecx, [esp + 0x11c]
mov dword [esp + 0x134], edi
mov dword [esp + 0x130], ebx
mov byte [esp + 0x120], bl
call fcn.004016e0
mov eax, dword [esp + 0x18]
add eax, 0x884
push eax
lea ecx, [esp + 0x118]
push ecx
lea edx, [esp + 0x24]
push edx
mov byte [esp + 0x184], 9
call fcn.00456db0
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x88]
push edx
mov byte [esp + 0x180], 0xa
call fcn.00456c60
cmp dword [esp + 0x50], esi
jb 0x453451
mov eax, dword [esp + 0x3c]
push eax
call fcn.006441c7
add esp, 4
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
cmp dword [esp + 0x34], esi
jb 0x453470
mov ecx, dword [esp + 0x20]
push ecx
call fcn.006441c7
add esp, 4
mov byte [esp + 0x178], bl
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
cmp dword [esp + 0x12c], esi
jb 0x45349c
mov edx, dword [esp + 0x118]
push edx
call fcn.006441c7
add esp, 4
push 0xa
push str.DownloadId
lea ecx, [esp + 0x11c]
mov dword [esp + 0x134], edi
mov dword [esp + 0x130], ebx
mov byte [esp + 0x120], bl
call fcn.004016e0
mov eax, dword [esp + 0x18]
mov byte [esp + 0x178], 0xb
mov ecx, dword [eax + 0x8bc]
push ecx
push 0x81dba4
lea esi, [esp + 0x138]
call fcn.00439900
add esp, 8
push eax
lea edx, [esp + 0x118]
push edx
lea eax, [esp + 0x24]
push eax
mov byte [esp + 0x184], 0xc
call fcn.00456db0
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x88]
push edx
mov byte [esp + 0x180], 0xd
call fcn.00456c60
cmp dword [esp + 0x50], 0x10
jb 0x453534
mov eax, dword [esp + 0x3c]
push eax
call fcn.006441c7
add esp, 4
mov esi, 0x10
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
cmp dword [esp + 0x34], esi
jb 0x453558
mov ecx, dword [esp + 0x20]
push ecx
call fcn.006441c7
add esp, 4
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
cmp dword [esp + 0x148], esi
jb 0x45357d
mov edx, dword [esp + 0x134]
push edx
call fcn.006441c7
add esp, 4
mov byte [esp + 0x178], bl
mov dword [esp + 0x148], edi
mov dword [esp + 0x144], ebx
mov byte [esp + 0x134], bl
cmp dword [esp + 0x12c], esi
jb 0x4535b2
mov eax, dword [esp + 0x118]
push eax
call fcn.006441c7
add esp, 4
push 0xb
push str.TimesPlayed
lea ecx, [esp + 0x11c]
mov dword [esp + 0x134], edi
mov dword [esp + 0x130], ebx
mov byte [esp + 0x120], bl
call fcn.004016e0
mov ecx, dword [esp + 0x18]
mov byte [esp + 0x178], 0xe
mov edx, dword [ecx + 0x95c]
push edx
push 0x81dba4
lea esi, [esp + 0x138]
call fcn.00439900
add esp, 8
push eax
lea eax, [esp + 0x118]
push eax
lea ecx, [esp + 0x24]
push ecx
mov byte [esp + 0x184], 0xf
call fcn.00456db0
lea edx, [esp + 0x54]
push edx
lea ecx, [esp + 0x88]
push ecx
mov byte [esp + 0x180], 0x10
call fcn.00456c60
cmp dword [esp + 0x50], 0x10
jb 0x45364a
mov edx, dword [esp + 0x3c]
push edx
call fcn.006441c7
add esp, 4
mov esi, 0x10
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
cmp dword [esp + 0x34], esi
jb 0x45366e
mov eax, dword [esp + 0x20]
push eax
call fcn.006441c7
add esp, 4
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
cmp dword [esp + 0x148], esi
jb 0x453693
mov ecx, dword [esp + 0x134]
push ecx
call fcn.006441c7
add esp, 4
mov byte [esp + 0x178], bl
mov dword [esp + 0x148], edi
mov dword [esp + 0x144], ebx
mov byte [esp + 0x134], bl
cmp dword [esp + 0x12c], esi
jb 0x4536c8
mov edx, dword [esp + 0x118]
push edx
call fcn.006441c7
add esp, 4
push 0xd
push str.TimesExecuted
lea ecx, [esp + 0x11c]
mov dword [esp + 0x134], edi
mov dword [esp + 0x130], ebx
mov byte [esp + 0x120], bl
call fcn.004016e0
mov eax, dword [esp + 0x18]
mov byte [esp + 0x178], 0x11
mov ecx, dword [eax + 0x960]
push ecx
push 0x81dba4
lea esi, [esp + 0x138]
call fcn.00439900
add esp, 8
push eax
lea edx, [esp + 0x118]
push edx
lea eax, [esp + 0x24]
push eax
mov byte [esp + 0x184], 0x12
call fcn.00456db0
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x88]
push edx
mov byte [esp + 0x180], 0x13
call fcn.00456c60
cmp dword [esp + 0x50], 0x10
jb 0x453760
mov eax, dword [esp + 0x3c]
push eax
call fcn.006441c7
add esp, 4
mov esi, 0x10
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
cmp dword [esp + 0x34], esi
jb 0x453784
mov ecx, dword [esp + 0x20]
push ecx
call fcn.006441c7
add esp, 4
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
cmp dword [esp + 0x148], esi
jb 0x4537a9
mov edx, dword [esp + 0x134]
push edx
call fcn.006441c7
add esp, 4
mov byte [esp + 0x178], bl
mov dword [esp + 0x148], edi
mov dword [esp + 0x144], ebx
mov byte [esp + 0x134], bl
cmp dword [esp + 0x12c], esi
jb 0x4537de
mov eax, dword [esp + 0x118]
push eax
call fcn.006441c7
add esp, 4
mov ecx, dword [esp + 0x18]
mov esi, 0x81dba8
cmp byte [ecx + 0x964], bl
jne 0x4537f4
mov esi, 0x81dbac
mov eax, esi
mov dword [esp + 0x12c], edi
mov dword [esp + 0x128], ebx
mov byte [esp + 0x118], bl
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x453810
sub eax, edx
push eax
push esi
lea ecx, [esp + 0x11c]
call fcn.004016e0
mov byte [esp + 0x178], 0x14
push 8
push str.TimedOut
lea ecx, [esp + 0x138]
mov dword [esp + 0x150], edi
mov dword [esp + 0x14c], ebx
mov byte [esp + 0x13c], bl
call fcn.004016e0
lea edx, [esp + 0x114]
push edx
lea eax, [esp + 0x134]
push eax
lea ecx, [esp + 0x24]
push ecx
mov byte [esp + 0x184], 0x15
call fcn.00456db0
lea edx, [esp + 0x54]
push edx
lea ecx, [esp + 0x88]
push ecx
mov byte [esp + 0x180], 0x16
call fcn.00456c60
mov esi, 0x10
cmp dword [esp + 0x50], esi
jb 0x4538ab
mov edx, dword [esp + 0x3c]
push edx
call fcn.006441c7
add esp, 4
mov dword [esp + 0x50], edi
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
cmp dword [esp + 0x34], esi
jb 0x4538ca
mov eax, dword [esp + 0x20]
push eax
call fcn.006441c7
add esp, 4
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
cmp dword [esp + 0x148], esi
jb 0x4538ef
mov ecx, dword [esp + 0x134]
push ecx
call fcn.006441c7
add esp, 4
mov dword [esp + 0x148], edi
mov dword [esp + 0x144], ebx
mov byte [esp + 0x134], bl
cmp dword [esp + 0x12c], esi
jb 0x45391d
mov edx, dword [esp + 0x118]
push edx
call fcn.006441c7
add esp, 4
mov dword [esp + 0x164], edi
mov dword [esp + 0x160], ebx
mov byte [esp + 0x150], bl
mov ecx, dword [esp + 0x60]
mov byte [esp + 0x178], 0x17
mov eax, dword [ecx + 0x18]
mov eax, dword [eax]
mov edi, dword [ecx]
mov dword [esp + 0x58], eax
mov dword [esp + 0x54], edi
jmp 0x453954
mov edi, dword [esp + 0x54]
mov eax, dword [esp + 0x60]
mov esi, dword [eax + 0x18]
mov eax, dword [eax]
cmp edi, ebx
je 0x453965
cmp edi, eax
je 0x45396a
call fcn.006441b7
cmp dword [esp + 0x58], esi
je 0x453c4c
cmp edi, ebx
jne 0x453c3e
call fcn.006441b7
xor eax, eax
mov ecx, dword [esp + 0x58]
cmp ecx, dword [eax + 0x18]
jne 0x453991
call fcn.006441b7
mov esi, dword [esp + 0x58]
push 0xffffffffffffffff
push ebx
add esi, 0xc
push esi
lea ecx, [esp + 0x120]
mov dword [esp + 0x138], 0xf
mov dword [esp + 0x134], ebx
mov byte [esp + 0x124], bl
call fcn.00401530
mov byte [esp + 0x178], 0x18
cmp edi, ebx
jne 0x453c45
call fcn.006441b7
xor edi, edi
mov edx, dword [esp + 0x58]
cmp edx, dword [edi + 0x18]
jne 0x4539e6
call fcn.006441b7
push 0xffffffffffffffff
lea eax, [esi + 0x1c]
push ebx
push eax
lea ecx, [esp + 0x13c]
mov dword [esp + 0x154], 0xf
mov dword [esp + 0x150], ebx
mov byte [esp + 0x140], bl
call fcn.00401530
mov byte [esp + 0x178], 0x19
mov eax, dword [esp + 0x144]
push eax
push str._04X
lea esi, [esp + 0x24]
call fcn.00439900
mov dword [esp + 0x88], eax
mov byte [esp + 0x180], 0x1a
mov ecx, dword [esp + 0x130]
push ecx
push str._04X
lea esi, [esp + 0x74]
call fcn.00439900
lea edx, [esp + 0x124]
push edx
push eax
lea esi, [esp + 0xf4]
mov byte [esp + 0x190], 0x1b
call fcn.00402f10
push eax
mov edi, 0x81dbc4
lea esi, [esp + 0x114]
mov byte [esp + 0x194], 0x1c
call fcn.00402fb0
add esp, 0x1c
mov ecx, dword [esp + 0x80]
push ecx
push eax
lea esi, [esp + 0xc8]
mov byte [esp + 0x180], 0x1d
call fcn.00402f10
lea edx, [esp + 0x138]
push edx
push eax
lea esi, [esp + 0xb4]
mov byte [esp + 0x188], 0x1e
call fcn.00402f10
add esp, 0x10
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x158]
mov byte [esp + 0x184], 0x1f
call fcn.00402720
cmp dword [esp + 0xbc], 0x10
jb 0x453afe
mov eax, dword [esp + 0xa8]
push eax
call fcn.006441c7
add esp, 4
mov edi, 0x10
mov esi, 0xf
mov dword [esp + 0xbc], esi
mov dword [esp + 0xb8], ebx
mov byte [esp + 0xa8], bl
cmp dword [esp + 0xd8], edi
jb 0x453b36
mov ecx, dword [esp + 0xc4]
push ecx
call fcn.006441c7
add esp, 4
mov dword [esp + 0xd8], esi
mov dword [esp + 0xd4], ebx
mov byte [esp + 0xc4], bl
cmp dword [esp + 0x110], edi
jb 0x453b64
mov edx, dword [esp + 0xfc]
push edx
call fcn.006441c7
add esp, 4
mov dword [esp + 0x110], esi
mov dword [esp + 0x10c], ebx
mov byte [esp + 0xfc], bl
cmp dword [esp + 0xf4], edi
jb 0x453b92
mov eax, dword [esp + 0xe0]
push eax
call fcn.006441c7
add esp, 4
mov dword [esp + 0xf4], esi
mov dword [esp + 0xf0], ebx
mov byte [esp + 0xe0], bl
cmp dword [esp + 0x7c], edi
jb 0x453bba
mov ecx, dword [esp + 0x68]
push ecx
call fcn.006441c7
add esp, 4
mov dword [esp + 0x7c], esi
mov dword [esp + 0x78], ebx
mov byte [esp + 0x68], bl
cmp dword [esp + 0x34], edi
jb 0x453bd9
mov edx, dword [esp + 0x20]
push edx
call fcn.006441c7
add esp, 4
lea esi, [esp + 0x54]
call fcn.00465ed0
cmp dword [esp + 0x148], edi
jb 0x453bfb
mov eax, dword [esp + 0x134]
push eax
call fcn.006441c7
add esp, 4
mov byte [esp + 0x178], 0x17
mov dword [esp + 0x148], 0xf
mov dword [esp + 0x144], ebx
mov byte [esp + 0x134], bl
cmp dword [esp + 0x12c], edi
jb 0x453950
mov ecx, dword [esp + 0x118]
push ecx
call fcn.006441c7
add esp, 4
jmp 0x453950
mov eax, dword [edi]
jmp 0x453983
mov edi, dword [edi]
jmp 0x4539d8
push str.Stats
lea ecx, [esp + 0x68]
call fcn.00401280
lea edx, [esp + 0x14c]
push edx
lea eax, [esp + 0x68]
push eax
lea ecx, [esp + 0x24]
push ecx
mov byte [esp + 0x184], 0x20
call fcn.00456db0
lea edx, [esp + 0x54]
push edx
lea ecx, [esp + 0x88]
push ecx
mov byte [esp + 0x180], 0x21
call fcn.00456c60
lea esi, [esp + 0x1c]
call fcn.0044a100
mov edi, 0x10
mov byte [esp + 0x178], 0x17
cmp dword [esp + 0x7c], edi
jb 0x453cbc
mov edx, dword [esp + 0x68]
push edx
call fcn.006441c7
add esp, 4
push str.register.tpl
lea ecx, [esp + 0x68]
call fcn.00401280
mov esi, dword [esp + 0x18]
lea eax, [esp + 0x64]
push eax
mov eax, esi
mov byte [esp + 0x17c], 0x22
call fcn.004693f0
mov byte [esp + 0x178], 0x17
mov byte [esp + 0x17], al
cmp dword [esp + 0x7c], edi
jb 0x453d01
mov ecx, dword [esp + 0x68]
push ecx
call fcn.006441c7
add esp, 4
cmp byte [esp + 0x17], bl
je 0x453da1
push str.register.tpl
lea ecx, [esp + 0x118]
call fcn.00401280
lea eax, [esp + 0x84]
mov byte [esp + 0x178], 0x23
mov edx, dword [esi]
mov edx, dword [edx + 0x188]
push eax
lea ecx, [esp + 0x118]
push ecx
mov ecx, esi
call edx
mov byte [esp + 0x17], al
cmp dword [esp + 0x12c], edi
jb 0x453d5d
mov eax, dword [esp + 0x118]
push eax
call fcn.006441c7
add esp, 4
mov esi, 0xf
mov dword [esp + 0x12c], esi
mov dword [esp + 0x128], ebx
mov byte [esp + 0x118], bl
cmp dword [esp + 0x164], edi
jb 0x453d90
mov ecx, dword [esp + 0x150]
push ecx
call fcn.006441c7
add esp, 4
lea edx, [esp + 0x84]
mov dword [esp + 0x164], esi
push edx
jmp 0x453de5
mov eax, dword [esi]
mov edx, dword [eax + 0x90]
push ebx
lea ecx, [esi + 0x3bc]
push ecx
mov ecx, esi
call edx
mov byte [esp + 0x17], al
cmp dword [esp + 0x164], edi
jb 0x453dd2
mov eax, dword [esp + 0x150]
push eax
call fcn.006441c7
add esp, 4
lea ecx, [esp + 0x84]
mov dword [esp + 0x164], 0xf
push ecx
mov dword [esp + 0x164], ebx
mov byte [esp + 0x154], bl
mov dword [esp + 0x17c], 0xffffffff
call fcn.00456c10
mov al, byte [esp + 0x17]
mov ecx, dword [esp + 0x170]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x158]
xor ecx, esp
call fcn.00643db8
mov esp, ebp
pop ebp
ret 4