Function at 0x408a20
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x588ecf
mov eax, dword fs:[0]
push eax
sub esp, 0x48
mov eax, dword [0x5f01b4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor edi, edi
push edi
push 0x408
mov ecx, ebx
mov dword [ebp - 0x50], ebx
call fcn.0046f264
mov dword [ebp - 4], edi
lea ecx, [ebx + 0x94]
mov dword [ebx], vtable.CBrStMonWDlg.0
call fcn.00475397
mov dword [ebx + 0x94], vtable.CStatic.0
lea ecx, [ebx + 0x108]
mov byte [ebp - 4], 1
call fcn.00475397
mov dword [ebx + method.CStatic.virtual_0], vtable.CStatic.0
lea ecx, [ebx + 0x17c]
mov byte [ebp - 4], 2
call fcn.00475397
mov dword [ebx + method.CStatic.virtual_0], vtable.CStatic.0
lea ecx, [ebx + 0x1f0]
mov byte [ebp - 4], 3
call fcn.00475397
mov dword [ebx + method.CStatic.virtual_0], vtable.CStatic.0
lea ecx, [ebx + 0x264]
mov byte [ebp - 4], 4
call fcn.00475397
mov dword [ebx + method.CStatic.virtual_0], vtable.CStatic.0
mov byte [ebp - 4], 5
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408afc
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x2d8], eax
mov byte [ebp - 4], 6
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408b2c
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x2dc], eax
mov byte [ebp - 4], 7
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408b5c
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x2e0], eax
mov byte [ebp - 4], 8
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408b8c
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x2e4], eax
mov byte [ebp - 4], 9
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408bbc
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x2e8], eax
mov byte [ebp - 4], 0xa
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408bec
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x2ec], eax
mov byte [ebp - 4], 0xb
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408c1c
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x2f0], eax
mov byte [ebp - 4], 0xc
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408c4c
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x2f4], eax
mov byte [ebp - 4], 0xd
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408c7c
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x2f8], eax
mov byte [ebp - 4], 0xe
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408cac
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x2fc], eax
mov byte [ebp - 4], 0xf
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408cdc
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x300], eax
mov byte [ebp - 4], 0x10
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408d0c
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x304], eax
mov byte [ebp - 4], 0x11
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408d3c
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x308], eax
mov byte [ebp - 4], 0x12
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408d6c
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x30c], eax
lea ecx, [ebx + 0x310]
mov byte [ebp - 4], 0x13
call fcn.00475397
mov dword [ebx + method.CStatic.virtual_0], vtable.CStatic.0
lea ecx, [ebx + 0x384]
mov byte [ebp - 4], 0x14
call fcn.00475397
mov dword [ebx + method.CStatic.virtual_0], vtable.CStatic.0
lea ecx, [ebx + 0x3f8]
mov byte [ebp - 4], 0x15
call fcn.00475397
mov dword [ebx + 0x3f8], 0x5978c4
mov byte [ebp - 4], 0x16
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408de7
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x478], eax
mov eax, vtable.CFont.0
mov dword [ebx + 0x54c], edi
mov dword [ebx + 0x548], eax
mov dword [ebx + 0x554], edi
mov dword [ebx + 0x550], eax
mov byte [ebp - 4], 0x19
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408e34
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x558], eax
mov byte [ebp - 4], 0x1a
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408e64
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x55c], eax
mov byte [ebp - 4], 0x1b
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408e94
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x560], eax
mov byte [ebp - 4], 0x1c
call fcn.0046b8a8
xor ecx, ecx
cmp eax, edi
setne cl
cmp ecx, edi
jne 0x408ec4
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x564], eax
mov eax, vtable.CMenu.0
mov dword [ebx + 0x56c], eax
mov dword [ebx + 0x570], edi
mov dword [ebx + 0x574], eax
mov dword [ebx + 0x578], edi
mov dword [ebx + 0x57c], eax
mov dword [ebx + 0x580], edi
lea ecx, [ebx + 0x5a4]
mov byte [ebp - 4], 0x20
push ecx
mov dword [ebx + 0x584], edi
mov dword [ebx + 0x588], edi
call fcn.004347c0
mov dword [ebx + 0x5b0], 0x5bde7c
mov dword [ebx + 0x5b4], edi
mov dword [ebx + 0x5c0], edi
mov dword [ebx + 0x5bc], edi
mov dword [ebx + 0x5b8], edi
mov dword [ebx + 0x5c8], 0x5a514c
mov dword [ebx + 0x5cc], edi
mov dword [ebx + 0x5d8], edi
mov dword [ebx + 0x5d4], edi
mov dword [ebx + 0x5d0], edi
mov dword [ebx + 0x5dc], 0x5bdfa0
mov dword [ebx + 0x5e0], edi
mov dword [ebx + 0x5ec], edi
mov dword [ebx + 0x5e8], edi
mov dword [ebx + 0x5e4], edi
lea ecx, [ebx + 0x5f8]
mov byte [ebp - 4], 0x24
call fcn.00475397
fld1
mov dword [ebx + 0x5f8], 0x5c0844
mov dword [ebx + 0x670], edi
mov dword [ebx + 0x66c], 0x5985e8
fst qword [ebx + 0x680]
fstp qword [ebx + 0x688]
mov byte [ebp - 4], 0x25
mov dword [ebx + 0x6d8], edi
mov dword [ebx + 0x6dc], edi
mov dword [ebx + 0x6e0], edi
mov dword [ebx + 0x6e4], edi
mov dword [ebx + 0x6ec], edi
mov dword [ebx + 0x6f0], edi
mov dword [ebx + 0x6f4], edi
mov dword [ebx + 0x6f8], edi
lea edx, [ebx + 0x710]
push edx
mov dword [ebx + 0x700], edi
mov dword [ebx + 0x704], edi
mov dword [ebx + 0x708], edi
mov dword [ebx + 0x70c], edi
call fcn.00450c00
lea ecx, [ebx + 0x9b0]
mov byte [ebp - 4], 0x26
mov dword [ecx], vtable.CWtsapi32Dll.0
mov dword [ecx + 4], edi
mov dword [ecx + 8], edi
mov dword [ecx + 0xc], edi
mov dword [ecx + 0x10], edi
mov dword [ecx + 0x14], edi
mov dword [ecx + 0x18], edi
call fcn.00456500
mov byte [ebp - 4], 0x27
lea ecx, [ebx + 0x9dc]
call fcn.00475397
mov dword [ebx + 0x9dc], 0x5c827c
mov dword [ebx + 0xadc], edi
mov byte [ebx + 0xaec], 0
mov dword [ebx + 0xae8], edi
mov dword [ebx + 0xae4], edi
mov dword [ebx + 0xae0], edi
call fcn.0046a320
lea ecx, [ebx + 0xaf4]
mov byte [ebp - 4], 0x28
call fcn.00475397
mov dword [ebx + 0xaf4], 0x5c827c
mov dword [ebx + 0xbf4], edi
mov byte [ebx + 0xc04], 0
mov dword [ebx + 0xc00], edi
mov dword [ebx + 0xbfc], edi
mov dword [ebx + 0xbf8], edi
call fcn.0046a320
lea ecx, [ebx + 0xc0c]
mov byte [ebp - 4], 0x29
call fcn.00475397
mov dword [ebx + 0xc0c], 0x5c827c
mov dword [ebx + 0xd0c], edi
mov byte [ebx + 0xd1c], 0
mov dword [ebx + 0xd18], edi
mov dword [ebx + 0xd14], edi
mov dword [ebx + 0xd10], edi
call fcn.0046a320
lea ecx, [ebx + 0xd24]
mov byte [ebp - 4], 0x2a
call fcn.00475397
mov dword [ebx + 0xd24], 0x5c827c
mov dword [ebx + 0xe24], edi
mov byte [ebx + 0xe34], 0
mov dword [ebx + 0xe30], edi
mov dword [ebx + 0xe2c], edi
mov dword [ebx + 0xe28], edi
call fcn.0046a320
lea ecx, [ebx + 0xe3c]
mov byte [ebp - 4], 0x2b
call fcn.00475397
mov dword [ebx + 0xe3c], 0x5c827c
mov dword [ebx + 0xf3c], edi
mov byte [ebx + 0xf4c], 0
mov dword [ebx + 0xf48], edi
mov dword [ebx + 0xf44], edi
mov dword [ebx + 0xf40], edi
call fcn.0046a320
lea ecx, [ebx + 0xf54]
mov byte [ebp - 4], 0x2c
call fcn.00475397
mov dword [ebx + 0xf54], 0x5c827c
mov dword [ebx + 0x1054], edi
mov byte [ebx + 0x1064], 0
mov dword [ebx + 0x1060], edi
mov dword [ebx + 0x105c], edi
mov dword [ebx + 0x1058], edi
call fcn.0046a320
lea ecx, [ebx + 0x106c]
mov byte [ebp - 4], 0x2d
call fcn.00475397
mov dword [ebx + 0x106c], 0x5c827c
mov dword [ebx + 0x116c], edi
mov byte [ebx + 0x117c], 0
mov dword [ebx + 0x1178], edi
mov dword [ebx + 0x1174], edi
mov dword [ebx + 0x1170], edi
call fcn.0046a320
lea ecx, [ebx + 0x1184]
mov byte [ebp - 4], 0x2e
call fcn.00475397
mov dword [ebx + 0x1184], 0x5c827c
mov dword [ebx + 0x1284], edi
mov byte [ebx + 0x1294], 0
mov dword [ebx + 0x1290], edi
mov dword [ebx + 0x128c], edi
mov dword [ebx + 0x1288], edi
call fcn.0046a320
lea ecx, [ebx + 0x129c]
mov byte [ebp - 4], 0x2f
call fcn.00475397
mov dword [ebx + 0x129c], 0x5c827c
mov dword [ebx + 0x139c], edi
mov byte [ebx + 0x13ac], 0
mov dword [ebx + 0x13a8], edi
mov dword [ebx + 0x13a4], edi
mov dword [ebx + 0x13a0], edi
call fcn.0046a320
lea ecx, [ebx + 0x13b4]
mov byte [ebp - 4], 0x30
call fcn.00475397
mov dword [ebx + 0x13b4], 0x5c827c
mov dword [ebx + 0x14b4], edi
mov byte [ebx + 0x14c4], 0
mov dword [ebx + 0x14c0], edi
mov dword [ebx + 0x14bc], edi
mov dword [ebx + 0x14b8], edi
call fcn.0046a320
lea ecx, [ebx + 0x14cc]
mov byte [ebp - 4], 0x31
call fcn.00475397
mov dword [ebx + 0x14cc], 0x5c827c
mov dword [ebx + 0x15cc], edi
mov byte [ebx + 0x15dc], 0
mov dword [ebx + 0x15d8], edi
mov dword [ebx + 0x15d4], edi
mov dword [ebx + 0x15d0], edi
call fcn.0046a320
lea ecx, [ebx + 0x15e4]
mov byte [ebp - 4], 0x32
call fcn.00475397
mov dword [ebx + 0x15e4], 0x5c827c
mov dword [ebx + 0x16e4], edi
mov byte [ebx + 0x16f4], 0
mov dword [ebx + 0x16f0], edi
mov dword [ebx + 0x16ec], edi
mov dword [ebx + 0x16e8], edi
call fcn.0046a320
lea ecx, [ebx + 0x16fc]
mov byte [ebp - 4], 0x33
call fcn.00475397
mov dword [ebx + 0x16fc], 0x5c827c
mov dword [ebx + 0x17fc], edi
mov byte [ebx + 0x180c], 0
mov dword [ebx + 0x1808], edi
mov dword [ebx + 0x1804], edi
mov dword [ebx + 0x1800], edi
call fcn.0046a320
lea ecx, [ebx + 0x1814]
mov byte [ebp - 4], 0x34
call fcn.00475397
mov dword [ebx + 0x1814], 0x5978c4
mov dword [ebx + 0x1888], edi
mov dword [ebx + 0x188c], edi
mov dword [ebx + 0x1890], edi
mov dword [ebx + 0x1898], edi
mov dword [ebx + 0x189c], edi
mov dword [ebx + 0x18a0], edi
mov byte [ebp - 4], 0x37
lea esi, [ebx + 0x18a8]
mov dword [ebp - 0x38], edi
mov dword [esi], edi
mov dword [esi + 4], edi
mov dword [esi + 8], edi
lea eax, [ebp - 0x38]
push eax
xor edi, edi
call fcn.00430e40
xor esi, esi
mov dword [ebx + 0x18b8], esi
mov byte [ebx + 0x18cc], 0
mov dword [ebx + 0x18d8], esi
mov dword [ebx + 0x18dc], esi
mov dword [ebx + 0x18e4], esi
mov dword [ebx + 0x1900], esi
lea ecx, [ebx + 0x190c]
mov byte [ebp - 4], 0x39
call fcn.00475397
mov dword [ebx + 0x190c], 0x597d44
mov byte [ebp - 4], 0x3a
call fcn.0046b8a8
xor ecx, ecx
cmp eax, esi
setne cl
cmp ecx, esi
jne 0x40940b
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1990], eax
mov byte [ebp - 4], 0x3b
call fcn.0046b8a8
xor ecx, ecx
cmp eax, esi
setne cl
cmp ecx, esi
jne 0x40943b
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1994], eax
mov byte [ebp - 4], 0x3c
call fcn.0046b8a8
xor ecx, ecx
cmp eax, esi
setne cl
cmp ecx, esi
jne 0x40946b
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x1998], eax
mov byte [ebp - 4], 0x3d
call fcn.0046b8a8
xor ecx, ecx
cmp eax, esi
setne cl
cmp ecx, esi
jne 0x40949b
push 0x80004005
call fcn.004020e0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebx + 0x199c], eax
call fcn.00457eb0
mov dword [ebx + 0x19ac], eax
cmp eax, esi
jne 0x4094c6
mov dword [ebx + 0x19ac], 9
mov dword [ebx + 0x19b4], esi
lea ecx, [ebx + 0x19c8]
mov byte [ebp - 4], 0x3f
call fcn.00475397
mov dword [ebx + 0x19c8], 0x597d44
lea ecx, [ebx + 0x1a40]
push 0x5bda14
mov byte [ebp - 4], 0x40
call fcn.00401ca0
mov byte [ebp - 4], 0x41
mov eax, 1
lea ecx, [ebp - 0x34]
push ecx
mov dword [ebx + 0x1a44], esi
mov dword [ebx + 0x1a48], esi
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], 0xc7
mov dword [ebp - 0x14], 0xffffffff
call fcn.00560836
mov edi, eax
and eax, edx
add esp, 4
mov dword [ebp - 0x38], edx
cmp eax, 0xffffffff
jne 0x40954d
push 0x80070057
call fcn.004020e0
push edx
push edi
push str.__SetNextTime______d__n
push 0x40000
push 0x5f2054
call fcn.00433010
mov ecx, dword [ebp - 0x38]
add esp, 0x14
mov dword [ebx + 0x1a48], ecx
push esi
mov dword [ebx + 0x1a44], edi
push 0x5bda14
lea ecx, [ebx + 0x2d8]
mov byte [ebx + 0x24], 1
call fcn.00401f50
push esi
push 0x5bda14
lea ecx, [ebx + 0x2dc]
call fcn.00401f50
push esi
push 0x5bda14
lea ecx, [ebx + 0x2e0]
call fcn.00401f50
push esi
push 0x5bda14
lea ecx, [ebx + 0x2e4]
call fcn.00401f50
push 0x5bda14
lea ecx, [ebx + 0x300]
call fcn.00404fe0
push esi
push 0x5bda14
lea ecx, [ebx + 0x308]
call fcn.00401f50
push esi
push 0x5bda14
lea ecx, [ebx + 0x30c]
call fcn.00401f50
push esi
push 0x5bda14
lea ecx, [ebx + 0x1a40]
call fcn.00401f50
call fcn.0046f0ea
call fcn.0046f0ea
mov eax, dword [eax + 0xc]
push 0xef
push eax
call dword [sym.imp.USER32.dll_LoadIconW]
fld1
or ecx, 0xffffffff
fst qword [ebx + 0x6a8]
fstp qword [ebx + 0x6b0]
mov dword [ebx + 0x1a3c], eax
mov dword [ebx + 0x4c0], esi
mov dword [ebx + 0x594], ecx
mov dword [ebx + 0x598], ecx
mov dword [ebx + 0x59c], ecx
mov byte [ebx + 0x5a0], 0
mov byte [ebx + 0x491], 0x10
mov dword [ebx + 0x470], 0xef
mov dword [ebx + 0x5c4], esi
mov dword [ebx + 0x48c], esi
mov dword [ebx + 0x69c], esi
mov dword [ebx + 0x698], esi
mov dword [ebx + 0x6a0], esi
mov dword [ebx + 0x6a4], esi
mov dword [ebx + 0x6d4], esi
mov dword [ebx + 0x6e8], esi
mov dword [ebx + 0x6fc], esi
mov dword [ebx + 0x6b8], 0x11
mov dword [ebx + 0x6bc], 0x26
movzx edx, byte [0x5f8b28]
neg edx
sbb edx, edx
and edx, 0x56
add edx, 0x46
mov dword [ebx + 0x6c0], edx
mov dword [ebx + 0x6dc], esi
mov dword [ebx + 0x6e4], esi
mov dword [ebx + 0x6d8], esi
mov dword [ebx + 0x6e0], esi
mov eax, 0xc
mov dword [ebx + 0x6c4], eax
mov dword [ebx + 0x6c8], eax
mov eax, 1
mov dword [ebx + 0x6f0], esi
mov dword [ebx + 0x6f8], esi
mov dword [ebx + 0x6ec], esi
mov dword [ebx + 0x6f4], esi
mov dword [ebx + 0x704], esi
mov dword [ebx + 0x70c], esi
mov dword [ebx + 0x700], esi
mov dword [ebx + 0x708], esi
mov dword [ebx + 0x18bc], esi
mov dword [ebx + 0x9cc], esi
mov dword [ebx + 0x9d0], esi
mov dword [ebx + 0x9d4], esi
mov dword [ebx + 0x9d8], esi
mov dword [ebx + 0x18c0], eax
mov dword [ebx + 0x4bc], esi
mov dword [ebx + 0x18e8], esi
mov dword [ebx + 0x4a0], eax
mov byte [ebx + 0x18ec], 0
mov dword [ebx + 0x18f8], esi
mov dword [ebx + 0x18f0], esi
mov dword [ebx + 0x18c4], esi
mov dword [ebx + 0x4b4], esi
mov dword [ebx + 0x4b8], esi
mov dword [ebx + 0x18fc], eax
mov byte [ebx + 0x18f4], 0
mov dword [ebx + 0x1904], esi
mov dword [ebx + 0x1908], esi
mov dword [ebx + 0x1980], esi
mov dword [ebx + 0x1984], esi
mov dword [ebx + 0x19a0], esi
mov dword [ebx + 0x19a4], eax
mov dword [ebx + 0x590], ecx
mov dword [ebx + 0x1988], esi
mov dword [ebx + 0x198c], esi
mov dword [ebx + 0x4c4], esi
mov dword [ebx + 0x568], esi
mov byte [ebx + 0x19a8], 0
mov word [ebx + 0x19b0], 0
mov byte [ebx + 0x9ac], 0
mov dword [ebx + 0x4c8], esi
mov dword [ebx + 0x4a8], esi
mov dword [ebx + 0x4ac], esi
mov dword [ebx + 0x4b0], esi
mov dword [ebp - 0x38], 5
nop
lea eax, [ebp - 0x44]
push eax
call fcn.004314b0
add esp, 4
lea edi, [ebx + 0x1888]
mov byte [ebp - 4], 0x42
call fcn.004301f0
mov byte [ebp - 4], 0x41
mov eax, dword [ebp - 0x40]
cmp eax, esi
je 0x409851
mov edi, eax
add eax, 4
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x409851
mov edx, dword [edi]
mov eax, dword [edx]
mov ecx, edi
call eax
lea ecx, [edi + 8]
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x409851
mov eax, dword [edi]
mov edx, dword [eax + 4]
mov ecx, edi
call edx
lea eax, [ebp - 0x4c]
push eax
call fcn.004314b0
add esp, 4
lea edi, [ebx + 0x1898]
mov byte [ebp - 4], 0x43
call fcn.004301f0
mov byte [ebp - 4], 0x41
mov eax, dword [ebp - 0x48]
cmp eax, esi
je 0x4098a2
mov edi, eax
add eax, 4
or ecx, 0xffffffff
lock xadd dword [eax], ecx
jne 0x4098a2
mov edx, dword [edi]
mov eax, dword [edx]
mov ecx, edi
call eax
lea ecx, [edi + 8]
or edx, 0xffffffff
lock xadd dword [ecx], edx
jne 0x4098a2
mov eax, dword [edi]
mov edx, dword [eax + 4]
mov ecx, edi
call edx
dec dword [ebp - 0x38]
jne 0x409800
mov edi, dword [ebx + 0x19b4]
cmp edi, esi
je 0x4098ef
mov dword [ebp - 0x38], edi
mov byte [ebp - 4], 0x44
mov ecx, dword [edi]
cmp ecx, esi
je 0x4098cd
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push 1
call edx
mov dword [edi], esi
mov byte [ebp - 4], 0x41
mov ecx, dword [edi]
cmp ecx, esi
je 0x4098e0
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push 1
call edx
push edi
call fcn.0046acae
add esp, 4
mov dword [ebx + 0x19b4], esi
mov dword [ebx + 0x19bc], esi
mov dword [ebx + 0x19c0], 5
mov dword [ebx + 0x19c4], esi
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0055db96
mov esp, ebp
pop ebp
ret