Function at 0x45abe0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0xffffffffffffffff
push 0x5f9c4e
mov eax, dword fs:[0]
push eax
sub esp, 8
push esi
push edi
mov eax, dword [0x6f1550]
xor eax, esp
push eax
lea eax, [esp + 0x14]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0xc], esi
mov eax, dword [esi + 0x74]
mov dword [esi], vtable.CUltimatePlayerDlg.2.0
mov dword [esi + 0xe4], vtable.CUltimatePlayerDlg.1.0
mov ecx, dword [eax + 4]
mov dword [ecx + esi + 0x74], vtable.CUltimatePlayerDlg.0
mov edx, dword [esi + 0x74]
mov eax, dword [edx + 4]
lea ecx, [eax - 0x1930]
mov dword [eax + esi + 0x70], ecx
mov dword [esp + 0x1c], 0x39
mov ecx, esi
call fcn.0059e305
mov edi, dword [esi + 0x28c]
test edi, edi
je 0x45ac62
mov ecx, edi
call fcn.00457a40
push edi
call fcn.0059b05f
add esp, 4
mov ecx, esi
call fcn.004546f0
mov byte [esp + 0x1c], 0x38
lea ecx, [esi + 0x1928]
call fcn.005aa1c2
mov byte [esp + 0x1c], 0x37
lea ecx, [esi + 0x1810]
call fcn.00433e00
mov byte [esp + 0x1c], 0x36
lea ecx, [esi + 0x16f8]
call fcn.00433e00
mov byte [esp + 0x1c], 0x35
lea ecx, [esi + 0x15e0]
call fcn.00433e00
mov byte [esp + 0x1c], 0x34
lea ecx, [esi + 0x14c8]
call fcn.00433e00
mov byte [esp + 0x1c], 0x33
lea ecx, [esi + 0x13b0]
call fcn.00433e00
mov byte [esp + 0x1c], 0x32
lea ecx, [esi + 0x1298]
call fcn.00433e00
mov byte [esp + 0x1c], 0x31
lea ecx, [esi + 0x1180]
call fcn.00433e00
mov byte [esp + 0x1c], 0x30
lea ecx, [esi + 0x1068]
call fcn.00433e00
mov byte [esp + 0x1c], 0x2f
lea ecx, [esi + 0xf50]
call fcn.00433e00
mov byte [esp + 0x1c], 0x2e
lea ecx, [esi + 0xe38]
call fcn.00433e00
mov byte [esp + 0x1c], 0x2d
lea ecx, [esi + 0xd20]
call fcn.00433e00
mov byte [esp + 0x1c], 0x2c
lea ecx, [esi + 0xc08]
call fcn.00433e00
mov byte [esp + 0x1c], 0x2b
lea ecx, [esi + 0xac8]
call fcn.00454e00
mov byte [esp + 0x1c], 0x2a
lea ecx, [esi + 0x930]
call fcn.00454d90
mov byte [esp + 0x1c], 0x29
lea ecx, [esi + 0x798]
call fcn.00454d90
mov byte [esp + 0x1c], 0x28
lea ecx, [esi + 0x600]
call fcn.00454d90
mov byte [esp + 0x1c], 0x27
lea ecx, [esi + 0x2a8]
call fcn.00458e20
mov byte [esp + 0x1c], 0x26
lea ecx, [esi + 0x2a4]
call fcn.00401aa0
mov al, 0x25
mov byte [esp + 0x1c], al
lea ecx, [esi + 0x278]
mov dword [esp + 0x10], ecx
mov byte [esp + 0x1c], al
call fcn.0045aa70
mov byte [esp + 0x1c], 0x24
lea ecx, [esi + 0x264]
call fcn.00454840
mov byte [esp + 0x1c], 0x23
lea ecx, [esi + 0x250]
call fcn.00454800
mov byte [esp + 0x1c], 0x22
lea ecx, [esi + 0x1f8]
call fcn.00401aa0
mov byte [esp + 0x1c], 0x21
lea ecx, [esi + 0x1dc]
call fcn.00401aa0
mov byte [esp + 0x1c], 0x20
lea ecx, [esi + 0x1d8]
call fcn.00401aa0
mov byte [esp + 0x1c], 0x1f
lea ecx, [esi + 0x1a4]
call fcn.0045a970
mov cl, 0x1e
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x1a0]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45ae34
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov cl, 0x1d
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x190]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45ae56
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0x1c
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x18c]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45ae78
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0x1b
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x188]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45ae9a
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov al, 0x1a
mov byte [esp + 0x1c], al
lea ecx, [esi + 0x168]
mov dword [esp + 0x10], ecx
mov byte [esp + 0x1c], al
call fcn.004547b0
mov byte [esp + 0x1c], 0x19
lea eax, [esi + 0x150]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
mov cl, 0x18
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x14c]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45aee7
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0x17
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x148]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45af09
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0x16
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x144]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45af2b
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0x15
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x140]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45af4d
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0x14
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x13c]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45af6f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0x13
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x138]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45af91
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0x12
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x134]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45afb3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0x11
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x130]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45afd5
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0x10
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x12c]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45aff7
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0xf
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x128]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b019
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov byte [esp + 0x1c], 0xe
lea ecx, [esi + 0x124]
call fcn.004120a0
mov byte [esp + 0x1c], 0xd
lea ecx, [esi + 0x120]
call fcn.004120a0
mov cl, 0xc
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x11c]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b05b
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0xb
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x118]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b07d
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 0xa
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x114]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b09f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 9
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x110]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b0c1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 8
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x10c]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b0e3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 7
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x108]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b105
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 6
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x104]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b127
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 5
mov byte [esp + 0x1c], cl
lea eax, [esi + 0x100]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b149
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 4
mov byte [esp + 0x1c], cl
lea eax, [esi + 0xfc]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b16b
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 3
mov byte [esp + 0x1c], cl
lea eax, [esi + 0xf8]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b18d
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 2
mov byte [esp + 0x1c], cl
lea eax, [esi + 0xf4]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b1af
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov cl, 1
mov byte [esp + 0x1c], cl
lea eax, [esi + 0xf0]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], cl
mov eax, dword [eax]
test eax, eax
je 0x45b1d1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov byte [esp + 0x1c], 0
lea eax, [esi + 0xec]
mov dword [esp + 0x10], eax
mov byte [esp + 0x1c], 0
mov eax, dword [eax]
test eax, eax
je 0x45b1f3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x1c], 0xffffffff
mov ecx, esi
call fcn.0046feb0
mov ecx, dword [esp + 0x14]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
add esp, 0x14
ret