Function at 0x453a90
Capabilities:
Get thread local storage value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x495952
mov eax, dword fs:[0]
push eax
sub esp, 0x70
mov eax, dword [0x4c21d0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov esi, ecx
push eax
mov dword [ebp - 0x60], esi
call fcn.0044a3b0
xor ebx, ebx
mov dword [ebp - 4], ebx
lea eax, [esi + 0x70]
mov dword [esi], vtable.CFpPathRegion.0
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 1
push 0x24
mov dword [eax], 0x4a6cc4
call fcn.0046c76e
add esp, 4
mov dword [ebp - 0x68], eax
mov byte [ebp - 4], 2
cmp eax, ebx
je 0x453b03
push eax
call fcn.00420e90
mov esi, eax
jmp 0x453b05
xor esi, esi
mov byte [ebp - 4], 1
mov edi, dword [ebp - 0x50]
add edi, 8
push esi
lea ecx, [edi + 4]
mov dword [edi], esi
call fcn.00421340
push esi
push esi
push edi
call fcn.0045e490
mov ecx, dword [ebp - 0x50]
add esp, 0xc
mov dword [ecx], 0x4a6c10
mov eax, dword [ebp + 8]
mov byte [ebp - 4], 3
mov edx, dword [ebp - 0x60]
mov dword [edx + 0x98], ebx
fld dword [eax + 8]
fsub qword [0x4aca28]
push 0x70
fstp dword [ebp - 0x50]
fldz
fst dword [ebp - 0x78]
fstp dword [ebp - 0x74]
fld dword [ebp - 0x50]
fstp dword [ebp - 0x70]
fld1
fstp dword [ebp - 0x6c]
call fcn.0046c76e
mov esi, eax
add esp, 4
mov dword [ebp - 0x68], esi
mov byte [ebp - 4], 4
cmp esi, ebx
je 0x453b87
lea ecx, [ebp - 0x78]
push ecx
call fcn.0044a3b0
mov dword [esi], vtable.CFpContainer.0
mov eax, esi
jmp 0x453b89
xor eax, eax
mov byte [ebp - 4], 3
fldz
fst dword [eax + 0x5c]
mov byte [eax + 0x54], 1
fld1
mov dword [eax + 0x58], 0xffe6e6e6
fstp dword [eax + 0x60]
push eax
fst dword [eax + 0x64]
fstp dword [eax + 0x68]
mov eax, dword [ebp - 0x60]
call fcn.0044a760
push 0x98
call fcn.0046c76e
mov esi, eax
add esp, 4
mov dword [ebp - 0x68], esi
mov byte [ebp - 4], 5
cmp esi, ebx
je 0x453c35
mov eax, dword [ebp + 8]
fld dword [eax + 0xc]
lea edx, [ebp - 0x24]
fstp dword [ebp - 0x6c]
push edx
fld dword [eax + 8]
fstp dword [ebp - 0x50]
fldz
fstp dword [ebp - 0x24]
fld1
fstp dword [ebp - 0x20]
fld dword [ebp - 0x50]
fstp dword [ebp - 0x1c]
fld dword [ebp - 0x6c]
fstp dword [ebp - 0x18]
call fcn.0044a3b0
fld1
mov dword [esi], vtable.CFpImageBox.0
mov dword [esi + 0x70], ebx
mov dword [esi + 0x80], ebx
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x78], ebx
mov dword [esi + 0x74], ebx
fstp dword [esi + 0x94]
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ebx
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x90], ebx
mov edi, esi
jmp 0x453c37
xor edi, edi
mov byte [ebp - 4], 3
xor eax, eax
mov word [ebp - 0x30], ax
push 8
mov eax, 0x4ab064
lea esi, [ebp - 0x30]
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
call fcn.0040e410
mov ecx, esi
mov byte [ebp - 4], 6
call fcn.0044acc0
mov esi, eax
mov dword [edi + 0x70], esi
cmp esi, ebx
je 0x453cb0
mov edx, dword [esi + 4]
lea ecx, [ebp - 0x50]
push ecx
push edx
mov dword [ebp - 0x50], ebx
call dword [sym.imp.gdiplus.dll_GdipGetImageWidth]
cmp eax, ebx
je 0x453c86
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x50]
mov esi, dword [edi + 0x70]
lea ecx, [ebp - 0x50]
mov dword [edi + 0x7c], eax
mov edx, dword [esi + 4]
push ecx
push edx
mov dword [ebp - 0x50], ebx
call dword [sym.imp.gdiplus.dll_GdipGetImageHeight]
cmp eax, ebx
je 0x453ca7
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x50]
mov dword [edi + 0x80], eax
mov byte [ebp - 4], 3
cmp dword [ebp - 0x1c], 8
jb 0x453cc6
mov ecx, dword [ebp - 0x30]
push ecx
call fcn.0046c44a
add esp, 4
mov eax, 3
mov dword [edi + 0x84], eax
mov dword [edi + 0x88], eax
mov dword [edi + 0x8c], eax
mov dword [edi + 0x90], eax
mov eax, dword [ebp - 0x60]
push edi
call fcn.0044a760
test byte [sym.Install.exe____B_1__get_instance___singleton_VCFpSysLanguage___serialization_boost__CAAAVCFpSysLanguage__XZ_51], 1
jne 0x453d15
or dword [sym.Install.exe____B_1__get_instance___singleton_VCFpSysLanguage___serialization_boost__CAAAVCFpSysLanguage__XZ_51], 1
push 0x499af0
mov byte [sym.Install.exe__t__1__get_instance___singleton_VCFpSysLanguage___serialization_boost__CAAAVCFpSysLanguage__XZ_4V__singleton_wrapp], bl
mov byte [0x4cd016], bl
call fcn.0046c718
add esp, 4
mov esi, sym.Install.exe__t__1__get_instance___singleton_VCFpSysLanguage___serialization_boost__CAAAVCFpSysLanguage__XZ_4V__singleton_wrapp
call fcn.00411f50
movzx edx, al
mov eax, dword [section..data]
mov dword [ebp - 0x64], edx
mov edx, dword [eax + 0xc]
mov ecx, section..data
call edx
add eax, 0x10
mov dword [ebp - 0x68], eax
push 0x98
mov byte [ebp - 4], 7
call fcn.0046c76e
mov esi, eax
add esp, 4
mov dword [ebp - 0x50], esi
mov byte [ebp - 4], 8
cmp esi, ebx
je 0x453db7
fld dword [0x4acb80]
lea eax, [ebp - 0x24]
fstp dword [ebp - 0x24]
push eax
fld dword [0x4acb7c]
fstp dword [ebp - 0x20]
fldz
fst dword [ebp - 0x1c]
fstp dword [ebp - 0x18]
call fcn.0044a3b0
fld1
mov dword [esi], vtable.CFpImageBox.0
mov dword [esi + 0x70], ebx
mov dword [esi + 0x80], ebx
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x78], ebx
mov dword [esi + 0x74], ebx
fstp dword [esi + 0x94]
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ebx
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x90], ebx
mov edi, esi
jmp 0x453db9
xor edi, edi
mov byte [ebp - 4], 7
mov eax, 0x4ab978
cmp dword [ebp - 0x64], ebx
jne 0x453dcc
mov eax, 0x4ab98c
xor ecx, ecx
mov word [ebp - 0x30], cx
mov ecx, eax
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
lea esi, [ecx + 2]
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x453de1
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [ebp - 0x30]
call fcn.0040e410
mov ecx, esi
push 1
mov esi, edi
mov byte [ebp - 4], 9
call fcn.0044cc50
mov byte [ebp - 4], 7
cmp dword [ebp - 0x1c], 8
jb 0x453e1e
mov edx, dword [ebp - 0x30]
push edx
call fcn.0046c44a
add esp, 4
mov eax, dword [ebp - 0x60]
push edi
call fcn.0044a760
fld dword [0x4acb80]
fstp dword [ebp - 0x5c]
mov eax, dword [ebp - 0x5c]
fld dword [0x4acb78]
mov dword [ebp - 0x24], eax
fstp dword [ebp - 0x58]
mov ecx, dword [ebp - 0x58]
fld dword [0x4acb74]
push 0xf4
fstp dword [ebp - 0x54]
mov edx, dword [ebp - 0x54]
fld dword [0x4acb70]
mov dword [ebp - 0x20], ecx
fstp dword [ebp - 0x50]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x18], eax
call fcn.0046c76e
mov edi, eax
add esp, 4
mov dword [ebp - 0x50], edi
mov byte [ebp - 4], 0xa
cmp edi, ebx
je 0x453ea8
fld dword [0x4a2c1c]
mov edx, dword [0x4c58b8]
sub esp, 8
fstp dword [esp + 4]
mov ecx, esp
mov dword [ebp - 0x6c], esp
push edx
call fcn.00401bb0
lea eax, [ebp - 0x24]
push eax
call fcn.00455c90
mov esi, eax
jmp 0x453eaa
xor esi, esi
mov byte [ebp - 4], 7
mov edi, dword [ebp - 0x60]
push esi
mov eax, edi
call fcn.0044a760
push 0xcc
mov dword [edi + 0x80], esi
call fcn.0046c76e
add esp, 4
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 0xb
cmp eax, ebx
je 0x453f09
fld dword [0x4acb6c]
lea ecx, [ebp - 0x24]
fstp dword [ebp - 0x24]
push ecx
fld dword [0x4acb78]
push eax
fstp dword [ebp - 0x20]
fld dword [0x4acb68]
fstp dword [ebp - 0x1c]
fld dword [0x4acb70]
fstp dword [ebp - 0x18]
call fcn.0044d700
mov edi, eax
jmp 0x453f0b
xor edi, edi
mov byte [ebp - 4], 7
mov eax, 0x4ab9a4
cmp dword [ebp - 0x64], ebx
jne 0x453f1e
mov eax, 0x4ab9b8
push 1
push 3
sub esp, 0x1c
mov esi, esp
xor edx, edx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], ebx
mov ecx, eax
mov word [esi], dx
lea edx, [ecx + 2]
mov dword [ebp - 0x50], esp
mov dword [ebp - 0x50], edx
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x453f41
sub ecx, dword [ebp - 0x50]
sar ecx, 1
push ecx
call fcn.0040e410
call fcn.0044ed90
mov ecx, dword [ebp - 0x60]
mov eax, 0x455180
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x34], ebx
push ecx
push eax
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0xd
call fcn.00455380
lea ecx, [edi + 0xb4]
lea eax, [ebp - 0x4c]
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0xe
call fcn.004136d0
mov eax, dword [ebp - 0x6c]
cmp eax, ebx
je 0x453fb5
mov ecx, eax
add eax, 8
or edx, 0xffffffff
lock xadd dword [eax], edx
jne 0x453fb5
mov eax, dword [ecx]
mov edx, dword [eax + 8]
call edx
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 7
call fcn.00447220
mov eax, dword [ebp - 0x60]
push edi
call fcn.0044a760
push 0x98
call fcn.0046c76e
mov esi, eax
add esp, 4
mov dword [ebp - 0x50], esi
mov byte [ebp - 4], 0xf
cmp esi, ebx
je 0x454044
fld dword [0x4acb80]
lea ecx, [ebp - 0x24]
fstp dword [ebp - 0x24]
push ecx
fld dword [0x4acb64]
fstp dword [ebp - 0x20]
fldz
fst dword [ebp - 0x1c]
fstp dword [ebp - 0x18]
call fcn.0044a3b0
fld1
mov dword [esi], vtable.CFpImageBox.0
mov dword [esi + 0x70], ebx
mov dword [esi + 0x80], ebx
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x78], ebx
mov dword [esi + 0x74], ebx
fstp dword [esi + 0x94]
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ebx
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x90], ebx
mov edi, esi
jmp 0x454046
xor edi, edi
mov byte [ebp - 4], 7
mov eax, 0x4ab9d0
cmp dword [ebp - 0x64], ebx
jne 0x454059
mov eax, str.q_Gr
xor edx, edx
mov ecx, eax
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], dx
lea esi, [ecx + 2]
mov edi, edi
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x454070
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [ebp - 0x30]
call fcn.0040e410
mov ecx, esi
push 1
mov esi, edi
mov byte [ebp - 4], 0x10
call fcn.0044cc50
mov byte [ebp - 4], 7
cmp dword [ebp - 0x1c], 8
jb 0x4540ad
mov eax, dword [ebp - 0x30]
push eax
call fcn.0046c44a
add esp, 4
mov eax, dword [ebp - 0x60]
push edi
call fcn.0044a760
fld dword [0x4acb80]
fstp dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x5c]
fld dword [0x4acb60]
mov dword [ebp - 0x24], ecx
fstp dword [ebp - 0x58]
mov edx, dword [ebp - 0x58]
fld dword [0x4acb74]
push 0xf4
fstp dword [ebp - 0x54]
mov eax, dword [ebp - 0x54]
fld dword [0x4acb70]
mov dword [ebp - 0x20], edx
fstp dword [ebp - 0x50]
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ecx
call fcn.0046c76e
mov edi, eax
add esp, 4
mov dword [ebp - 0x50], edi
mov byte [ebp - 4], 0x11
cmp edi, ebx
je 0x454137
fld dword [0x4a2c1c]
mov edx, dword [0x4c58b8]
sub esp, 8
fstp dword [esp + 4]
mov ecx, esp
mov dword [ebp - 0x6c], esp
push edx
call fcn.00401bb0
lea eax, [ebp - 0x24]
push eax
call fcn.00455c90
mov esi, eax
jmp 0x454139
xor esi, esi
mov byte [ebp - 4], 7
mov edi, dword [ebp - 0x60]
push esi
mov eax, edi
call fcn.0044a760
push 0xcc
mov dword [edi + 0x84], esi
call fcn.0046c76e
add esp, 4
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 0x12
cmp eax, ebx
je 0x454198
fld dword [0x4acb6c]
lea ecx, [ebp - 0x24]
fstp dword [ebp - 0x24]
push ecx
fld dword [0x4acb60]
push eax
fstp dword [ebp - 0x20]
fld dword [0x4acb68]
fstp dword [ebp - 0x1c]
fld dword [0x4acb70]
fstp dword [ebp - 0x18]
call fcn.0044d700
mov edi, eax
jmp 0x45419a
xor edi, edi
mov byte [ebp - 4], 7
mov eax, 0x4ab9a4
cmp dword [ebp - 0x64], ebx
jne 0x4541ad
mov eax, 0x4ab9b8
push 1
push 3
sub esp, 0x1c
mov esi, esp
xor edx, edx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], ebx
mov ecx, eax
mov word [esi], dx
lea edx, [ecx + 2]
mov dword [ebp - 0x50], esp
mov dword [ebp - 0x50], edx
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x4541d0
sub ecx, dword [ebp - 0x50]
sar ecx, 1
push ecx
call fcn.0040e410
call fcn.0044ed90
mov ecx, dword [ebp - 0x60]
mov eax, 0x455220
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x34], ebx
push ecx
push eax
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x14
call fcn.00455380
lea ecx, [edi + 0xb4]
lea eax, [ebp - 0x4c]
lea edx, [ebp - 0x70]
mov byte [ebp - 4], 0x15
call fcn.004136d0
mov eax, dword [ebp - 0x6c]
cmp eax, ebx
je 0x454244
mov ecx, eax
add eax, 8
or edx, 0xffffffff
lock xadd dword [eax], edx
jne 0x454244
mov eax, dword [ecx]
mov edx, dword [eax + 8]
call edx
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 7
call fcn.00447220
mov eax, dword [ebp - 0x60]
push edi
call fcn.0044a760
cmp dword [ebp - 0x64], ebx
je 0x454263
fld1
jmp 0x454269
fld dword [0x4acb30]
push 0xcc
fstp dword [ebp - 0x6c]
call fcn.0046c76e
add esp, 4
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 0x16
cmp eax, ebx
je 0x4542b6
fld dword [0x4acb80]
lea ecx, [ebp - 0x24]
fstp dword [ebp - 0x24]
push ecx
fld dword [0x4acb5c]
push eax
fstp dword [ebp - 0x20]
fld dword [0x4acb58]
fstp dword [ebp - 0x1c]
fld dword [0x4acaac]
fstp dword [ebp - 0x18]
call fcn.004500b0
mov edi, eax
jmp 0x4542b8
xor edi, edi
push 1
push 4
sub esp, 0x1c
mov byte [ebp - 4], 7
mov esi, esp
mov dword [ebp - 0x50], esp
xor edx, edx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], ebx
push 7
mov eax, 0x4ab0ac
mov word [esi], dx
call fcn.0040e410
call fcn.0044ed90
cmp byte [edi + 0xc4], 1
je 0x45434b
lea eax, [ebp - 0x2c]
mov byte [edi + 0xc4], 1
mov dword [ebp - 0x2c], vtable.._AV___Impl_no_alloc0_U___Callable_obj_V_lambda0___A0x9d361a44___0A__tr1_std__X_tr1_std__.0
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0x17
mov ecx, dword [0x4cca0c]
push ecx
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
lea edx, [ebp - 0x2c]
mov ecx, eax
call fcn.00402590
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x1c]
cmp ecx, ebx
je 0x454341
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
lea eax, [ebp - 0x2c]
cmp ecx, eax
setne al
movzx eax, al
push eax
call edx
mov dword [edi + 0xc8], 3
push 0x98
call fcn.0046c76e
mov esi, eax
add esp, 4
mov dword [ebp - 0x50], esi
mov byte [ebp - 4], 0x18
cmp esi, ebx
je 0x4543c2
fld dword [0x4acaa8]
lea eax, [ebp - 0x24]
fstp dword [ebp - 0x24]
push eax
fld dword [ebp - 0x6c]
fstp dword [ebp - 0x20]
fldz
fst dword [ebp - 0x1c]
fstp dword [ebp - 0x18]
call fcn.0044a3b0
fld1
mov dword [esi], vtable.CFpImageBox.0
mov dword [esi + 0x70], ebx
mov dword [esi + 0x80], ebx
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x78], ebx
mov dword [esi + 0x74], ebx
fstp dword [esi + 0x94]
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ebx
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x90], ebx
mov dword [ebp - 0x50], esi
jmp 0x4543c5
mov dword [ebp - 0x50], ebx
mov byte [ebp - 4], 7
mov eax, 0x4ab9fc
cmp dword [ebp - 0x64], ebx
jne 0x4543d8
mov eax, 0x4aba0c
xor ecx, ecx
mov word [ebp - 0x30], cx
mov ecx, eax
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
lea esi, [ecx + 2]
lea ecx, [ecx]
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x4543f0
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [ebp - 0x30]
call fcn.0040e410
mov byte [ebp - 4], 0x19
mov ecx, esi
mov esi, dword [ebp - 0x50]
push 1
call fcn.0044cc50
mov byte [ebp - 4], 7
cmp dword [ebp - 0x1c], 8
jb 0x45442e
mov edx, dword [ebp - 0x30]
push edx
call fcn.0046c44a
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov eax, edi
call fcn.0044a760
mov esi, dword [ebp - 0x60]
push edi
mov eax, esi
call fcn.0044a760
mov dword [esi + 0x88], edi
mov byte [edi + 0x3a], bl
cmp dword [ebp - 0x64], ebx
je 0x45445a
fld dword [0x4acb54]
jmp 0x454460
fld dword [0x4acb50]
fstp dword [ebp - 0x50]
push 0xcc
fld dword [0x4acb80]
fstp dword [ebp - 0x24]
fld dword [0x4acb5c]
fstp dword [ebp - 0x20]
fld dword [ebp - 0x50]
fadd qword [0x4acb48]
fstp dword [ebp - 0x1c]
fld dword [0x4acb08]
fstp dword [ebp - 0x18]
call fcn.0046c76e
add esp, 4
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 0x1a
cmp eax, ebx
je 0x4544b0
lea ecx, [ebp - 0x24]
push ecx
push eax
call fcn.004500b0
mov edi, eax
jmp 0x4544b2
xor edi, edi
push 1
push 4
sub esp, 0x1c
mov byte [ebp - 4], 7
mov esi, esp
mov dword [ebp - 0x50], esp
xor edx, edx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], ebx
push 7
mov eax, 0x4ab0ac
mov word [esi], dx
call fcn.0040e410
call fcn.0044ed90
cmp byte [edi + 0xc4], 1
je 0x454545
lea eax, [ebp - 0x2c]
mov byte [edi + 0xc4], 1
mov dword [ebp - 0x2c], vtable.._AV___Impl_no_alloc0_U___Callable_obj_V_lambda0___A0x9d361a44___0A__tr1_std__X_tr1_std__.0
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0x1b
mov ecx, dword [0x4cca0c]
push ecx
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
lea edx, [ebp - 0x2c]
mov ecx, eax
call fcn.00402590
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x1c]
cmp ecx, ebx
je 0x45453b
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
lea eax, [ebp - 0x2c]
cmp ecx, eax
setne al
movzx eax, al
push eax
call edx
mov dword [edi + 0xc8], 3
push 0x98
call fcn.0046c76e
mov esi, eax
add esp, 4
mov dword [ebp - 0x50], esi
mov byte [ebp - 4], 0x1c
cmp esi, ebx
je 0x4545bc
fld dword [0x4acaa8]
lea eax, [ebp - 0x24]
fstp dword [ebp - 0x24]
push eax
fld dword [ebp - 0x6c]
fstp dword [ebp - 0x20]
fldz
fst dword [ebp - 0x1c]
fstp dword [ebp - 0x18]
call fcn.0044a3b0
fld1
mov dword [esi], vtable.CFpImageBox.0
mov dword [esi + 0x70], ebx
mov dword [esi + 0x80], ebx
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x78], ebx
mov dword [esi + 0x74], ebx
fstp dword [esi + 0x94]
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ebx
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x90], ebx
mov dword [ebp - 0x50], esi
jmp 0x4545bf
mov dword [ebp - 0x50], ebx
mov byte [ebp - 4], 7
mov eax, 0x4aba20
cmp dword [ebp - 0x64], ebx
jne 0x4545d2
mov eax, str.O:N
xor ecx, ecx
mov word [ebp - 0x30], cx
mov ecx, eax
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
lea esi, [ecx + 2]
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x4545e7
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [ebp - 0x30]
call fcn.0040e410
mov byte [ebp - 4], 0x1d
mov ecx, esi
mov esi, dword [ebp - 0x50]
push 1
call fcn.0044cc50
mov byte [ebp - 4], 7
cmp dword [ebp - 0x1c], 8
jb 0x454625
mov edx, dword [ebp - 0x30]
push edx
call fcn.0046c44a
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov eax, edi
call fcn.0044a760
mov esi, dword [ebp - 0x60]
push edi
mov eax, esi
call fcn.0044a760
mov dword [esi + 0x8c], edi
cmp dword [ebp - 0x64], ebx
je 0x45464e
fld dword [0x4acb40]
jmp 0x454654
fld dword [0x4acb3c]
fstp dword [ebp - 0x50]
push 0xcc
fld dword [0x4acb38]
fstp dword [ebp - 0x24]
fld dword [0x4acb5c]
fstp dword [ebp - 0x20]
fld dword [ebp - 0x50]
fadd qword [0x4acb48]
fstp dword [ebp - 0x1c]
fld dword [0x4acb08]
fstp dword [ebp - 0x18]
call fcn.0046c76e
add esp, 4
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 0x1e
cmp eax, ebx
je 0x4546a4
lea ecx, [ebp - 0x24]
push ecx
push eax
call fcn.004500b0
mov edi, eax
jmp 0x4546a6
xor edi, edi
push 1
push 4
sub esp, 0x1c
mov byte [ebp - 4], 7
mov esi, esp
mov dword [ebp - 0x50], esp
xor edx, edx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], ebx
push 7
mov eax, 0x4ab0ac
mov word [esi], dx
call fcn.0040e410
call fcn.0044ed90
push 0x98
call fcn.0046c76e
mov esi, eax
add esp, 4
mov dword [ebp - 0x50], esi
mov byte [ebp - 4], 0x1f
cmp esi, ebx
je 0x45474d
fld dword [0x4acaa8]
lea eax, [ebp - 0x24]
fstp dword [ebp - 0x24]
push eax
fld dword [ebp - 0x6c]
fstp dword [ebp - 0x20]
fldz
fst dword [ebp - 0x1c]
fstp dword [ebp - 0x18]
call fcn.0044a3b0
fld1
mov dword [esi], vtable.CFpImageBox.0
mov dword [esi + 0x70], ebx
mov dword [esi + 0x80], ebx
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x78], ebx
mov dword [esi + 0x74], ebx
fstp dword [esi + 0x94]
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ebx
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x90], ebx
mov dword [ebp - 0x50], esi
jmp 0x454750
mov dword [ebp - 0x50], ebx
mov byte [ebp - 4], 7
mov eax, 0x4aba58
cmp dword [ebp - 0x64], ebx
jne 0x454763
mov eax, 0x4aba6c
xor ecx, ecx
mov word [ebp - 0x30], cx
mov ecx, eax
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
lea esi, [ecx + 2]
jmp 0x454780
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x454780
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [ebp - 0x30]
call fcn.0040e410
mov byte [ebp - 4], 0x20
mov ecx, esi
mov esi, dword [ebp - 0x50]
push 1
call fcn.0044cc50
mov byte [ebp - 4], 7
cmp dword [ebp - 0x1c], 8
jb 0x4547be
mov edx, dword [ebp - 0x30]
push edx
call fcn.0046c44a
add esp, 4
mov eax, dword [ebp - 0x50]
push eax
mov eax, edi
call fcn.0044a760
mov eax, dword [ebp - 0x60]
push edi
call fcn.0044a760
call fcn.00454ad0
cmp eax, 1
jne 0x4547e9
mov bl, al
mov esi, edi
call fcn.00450320
xor ebx, ebx
jmp 0x4547fd
cmp eax, ebx
jne 0x4547fa
xor bl, bl
mov esi, edi
call fcn.00450320
xor ebx, ebx
jmp 0x4547fd
mov byte [edi + 0x3a], bl
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x90], edi
cmp dword [ebp - 0x64], ebx
je 0x454813
fld dword [0x4acb40]
jmp 0x454819
fld dword [0x4acb3c]
fstp dword [ebp - 0x50]
push 0xcc
fld dword [0x4acb80]
fstp dword [ebp - 0x24]
fld dword [0x4acb34]
fstp dword [ebp - 0x20]
fld dword [ebp - 0x50]
fadd qword [0x4acb48]
fstp dword [ebp - 0x1c]
fld dword [0x4acb08]
fstp dword [ebp - 0x18]
call fcn.0046c76e
add esp, 4
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 0x21
cmp eax, ebx
je 0x454869
lea edx, [ebp - 0x24]
push edx
push eax
call fcn.004500b0
mov edi, eax
jmp 0x45486b
xor edi, edi
push 1
push 4
sub esp, 0x1c
mov esi, esp
mov byte [ebp - 4], 7
xor eax, eax
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], ebx
mov dword [ebp - 0x50], esp
mov word [esi], ax
push 7
mov eax, 0x4ab0ac
call fcn.0040e410
call fcn.0044ed90
push 0x98
call fcn.0046c76e
mov esi, eax
add esp, 4
mov dword [ebp - 0x50], esi
mov byte [ebp - 4], 0x22
cmp esi, ebx
je 0x454912
fld dword [0x4acaa8]
lea ecx, [ebp - 0x24]
fstp dword [ebp - 0x24]
push ecx
fld dword [ebp - 0x6c]
fstp dword [ebp - 0x20]
fldz
fst dword [ebp - 0x1c]
fstp dword [ebp - 0x18]
call fcn.0044a3b0
fld1
mov dword [esi], vtable.CFpImageBox.0
mov dword [esi + 0x70], ebx
mov dword [esi + 0x80], ebx
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x78], ebx
mov dword [esi + 0x74], ebx
fstp dword [esi + 0x94]
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ebx
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x90], ebx
mov dword [ebp - 0x50], esi
jmp 0x454915
mov dword [ebp - 0x50], ebx
mov byte [ebp - 4], 7
mov eax, 0x4aba84
cmp dword [ebp - 0x64], ebx
jne 0x454928
mov eax, 0x4abab4
xor edx, edx
mov ecx, eax
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], ebx
mov word [ebp - 0x30], dx
lea esi, [ecx + 2]
lea ecx, [ecx]
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x454940
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [ebp - 0x30]
call fcn.0040e410
mov byte [ebp - 4], 0x23
mov ecx, esi
mov esi, dword [ebp - 0x50]
push 1
call fcn.0044cc50
mov byte [ebp - 4], 7
cmp dword [ebp - 0x1c], 8
jb 0x45497e
mov eax, dword [ebp - 0x30]
push eax
call fcn.0046c44a
add esp, 4
mov ecx, dword [ebp - 0x50]
push ecx
mov eax, edi
call fcn.0044a760
mov esi, dword [ebp - 0x60]
push edi
mov eax, esi
call fcn.0044a760
cmp byte [edi + 0xc4], 1
je 0x4549f6
lea edx, [ebp - 0x2c]
mov byte [edi + 0xc4], 1
mov dword [ebp - 0x2c], vtable.._AV___Impl_no_alloc0_U___Callable_obj_V_lambda0___A0x9d361a44___0A__tr1_std__X_tr1_std__.0
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x1c], edx
mov byte [ebp - 4], 0x24
mov eax, dword [0x4cca0c]
push eax
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
lea edx, [ebp - 0x2c]
mov ecx, eax
call fcn.00402590
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x1c]
cmp ecx, ebx
je 0x4549ec
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
lea eax, [ebp - 0x2c]
cmp ecx, eax
setne al
movzx eax, al
push eax
call edx
mov dword [edi + 0xc8], 3
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x68]
add eax, 0xfffffff0
mov dword [esi + 0x94], edi
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x454a1f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0046c455
mov esp, ebp
pop ebp
ret 4