Function at 0x41ae80
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5e3c1c
mov eax, dword fs:[0]
push eax
sub esp, 0x654
mov eax, dword [0x672014]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x2bc], ecx
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x190]
mov dword [ebp - 0x298], eax
call fcn.00407dfc
push 0x1c
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x190]
push str.srl::SystemValues::AddValues
mov byte [ebp - 0x194], 0
call fcn.004075f5
mov dword [ebp - 4], 1
mov esi, dword [0x67e3a8]
test esi, esi
jne 0x41af28
push 0x68
call fcn.0046f39a
add esp, 4
mov dword [ebp - 0x2b4], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x41af1c
push ecx
mov ecx, eax
call fcn.0041d120
mov esi, eax
jmp 0x41af1e
xor esi, esi
mov byte [ebp - 4], 1
mov dword [0x67e3a8], esi
cmp dword [esi + 4], 4
jl 0x41af40
push ecx
lea ecx, [ebp - 0x194]
call fcn.004127e0
mov esi, dword [0x67e3a8]
test esi, esi
jne 0x41af74
push 0x68
call fcn.0046f39a
add esp, 4
mov dword [ebp - 0x2b4], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x41af68
push ecx
mov ecx, eax
call fcn.0041d120
mov esi, eax
jmp 0x41af6a
xor esi, esi
mov byte [ebp - 4], 1
mov dword [0x67e3a8], esi
cmp dword [esi + 4], 3
jl 0x41b3aa
sub esp, 8
lea ecx, [ebp - 0x450]
call fcn.00415530
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 5
call fcn.00407dfc
push 5
push str.TRACE
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 6
call fcn.004075f5
lea ecx, [ebp - 0x28]
call fcn.00407dfc
xor edi, edi
mov byte [ebp - 4], 7
cmp dword [esi + 0xc], edi
jle 0x41afda
nop
cmp edi, 0xa
jge 0x41afda
push 2
push 0x637484
lea ecx, [ebp - 0x28]
call fcn.0041df10
inc edi
cmp edi, dword [esi + 0xc]
jl 0x41afc0
lea ecx, [ebp - 0x40]
call fcn.00407dfc
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 8
call fcn.00407dfc
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x40]
mov ecx, esi
push eax
call fcn.0041d380
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
push 0x2040
cmovae eax, dword [ebp - 0x28]
mov dword [ebp - 0x2a8], eax
lea eax, [ebp - 0x2c4]
push eax
call fcn.005b7368
mov ecx, dword [ebp - 0x440]
lea edx, [ebp - 0x440]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, edx
push ecx
call eax
mov eax, dword [ebp - 0x30]
mov byte [ebp - 4], 0xa
lea edx, [ebp - 0x40]
cmp dword [ebp - 0x2c], 8
lea ecx, [ebp - 0x440]
push eax
cmovae edx, dword [ebp - 0x40]
mov byte [ebp - 4], 9
call fcn.004130d0
mov esi, eax
lea eax, [ebp - 0x2cc]
push 0x10
push eax
call fcn.005b7368
add esp, 0x1c
mov edx, 0x6370dc
mov ecx, esi
mov edi, eax
call fcn.00412d50
mov esi, eax
test esi, esi
jne 0x41b08f
xor ecx, ecx
jmp 0x41b096
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
push dword [edi + 4]
mov eax, dword [edi]
push ecx
call eax
push 0
lea eax, [ebp - 0x2f0]
push 6
push eax
call fcn.005b7396
mov edx, eax
mov ecx, esi
call fcn.0041e4a0
mov esi, eax
mov eax, 0x30
push 0
push 3
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x300]
push eax
call fcn.005b737c
mov edx, eax
mov ecx, esi
call fcn.0041e4a0
mov ecx, dword [ebp - 0x78]
mov byte [ebp - 4], 0xb
lea edx, [ebp - 0x88]
cmp dword [ebp - 0x74], 8
push ecx
cmovae edx, dword [ebp - 0x88]
mov ecx, eax
mov byte [ebp - 4], 9
call fcn.004130d0
push 0
mov edi, eax
lea eax, [ebp - 0x310]
push 5
push eax
call fcn.005b7396
mov edx, 0x6370dc
mov ecx, edi
mov esi, eax
call fcn.00412d50
mov edx, esi
mov ecx, eax
call fcn.0041e4a0
mov esi, eax
mov eax, 0x20
push 0x40
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x2d4]
push eax
call fcn.005b7368
mov ecx, dword [esi]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, esi
push ecx
call eax
mov eax, dword [ebp - 0x48]
add esp, 0x40
mov byte [ebp - 4], 0xc
lea edx, [ebp - 0x58]
cmp dword [ebp - 0x44], 8
mov ecx, esi
push eax
cmovae edx, dword [ebp - 0x58]
mov byte [ebp - 4], 9
call fcn.004130d0
add esp, 4
mov edx, 0x6374c4
mov ecx, eax
call fcn.00412d50
mov edx, dword [ebp - 0x2a8]
mov ecx, eax
call fcn.00412d50
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov eax, dword [0x67e5f8]
cmp eax, dword [ecx + 4]
jle 0x41b1e5
push 0x67e5f8
call fcn.005b583c
add esp, 4
cmp dword [0x67e5f8], 0xffffffff
jne 0x41b1e5
mov ecx, 0x67e5fc
call fcn.00407dfc
push 0x5f8b00
call fcn.005b547f
push 0x67e5f8
call fcn.005b57fd
add esp, 8
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x450]
call fcn.004153f0
mov esi, eax
mov byte [ebp - 4], 0xd
cmp esi, 0x67e5fc
je 0x41b2a7
mov eax, dword [0x67e610]
cmp eax, 8
jb 0x41b267
mov ecx, dword [0x67e5fc]
inc eax
cmp eax, 0x7fffffff
jbe 0x41b223
call fcn.005bcb11
add eax, eax
cmp eax, 0x1000
jb 0x41b25e
test byte [0x67e5fc], 0x1f
je 0x41b23a
call fcn.005bcb11
mov eax, dword [ecx - 4]
cmp eax, ecx
jb 0x41b246
call fcn.005bcb11
sub ecx, eax
cmp ecx, 4
jae 0x41b252
call fcn.005bcb11
cmp ecx, 0x23
jbe 0x41b25c
call fcn.005bcb11
mov ecx, eax
push ecx
call fcn.0046f3d1
add esp, 4
mov dword [0x67e60c], 0
xor eax, eax
mov dword [0x67e610], 7
mov word [0x67e5fc], ax
movups xmm0, xmmword [esi]
movups xmmword [0x67e5fc], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x67e60c], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 9
call fcn.00407420
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 8
call fcn.00407420
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], 7
call fcn.00407420
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 6
call fcn.00407420
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 5
call fcn.00407420
lea ecx, [ebp - 0x3e8]
mov byte [ebp - 4], 0xe
call fcn.00415410
mov byte [ebp - 4], 0xf
mov dword [ebp - method.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.virtual_0], vtable.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.0
lea eax, [ebp - 0x3e8]
mov byte [ebp - 4], 0x10
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.005b72e0
mov byte [ebp - 4], 1
add esp, 4
mov ecx, dword [0x67e3a8]
test ecx, ecx
jne 0x41b35e
push 0x68
call fcn.0046f39a
add esp, 4
mov dword [ebp - 0x2b4], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x41b352
push ecx
mov ecx, eax
call fcn.0041d120
mov ecx, eax
jmp 0x41b354
xor ecx, ecx
mov byte [ebp - 4], 1
mov dword [0x67e3a8], ecx
mov eax, dword [0x67e60c]
mov byte [ebp - 4], 0x12
mov edx, 0x67e5fc
cmp dword [0x67e610], 8
push eax
cmovae edx, dword [0x67e5fc]
mov byte [ebp - 4], 1
call fcn.004130d0
mov edx, str.values_
mov ecx, eax
call fcn.00412d50
mov esi, dword [ebp - 0x298]
mov ecx, eax
mov edx, esi
call fcn.00412d50
push eax
call fcn.00414150
add esp, 8
jmp 0x41b3b0
mov esi, dword [ebp - 0x298]
push esi
lea ecx, [ebp - 0x2a0]
call fcn.0040d490
mov byte [ebp - 4], 0x13
mov eax, dword [ebp - 0x2a0]
cmp dword [eax - 0xc], 0
jge 0x41b3d1
or edi, 0xffffffff
jmp 0x41b3f7
push 0x634414
push dword [ebp - 0x2a0]
call fcn.005b8c34
mov edi, eax
add esp, 8
test edi, edi
jne 0x41b3ef
or edi, 0xffffffff
jmp 0x41b3f7
sub edi, dword [ebp - 0x2a0]
sar edi, 1
mov dword [ebp - 0x29c], edi
nop dword [eax]
test edi, edi
js 0x41c7d1
mov eax, dword [ebp - 0x2a0]
cmp edi, dword [eax - 0xc]
jg 0x41b438
lea eax, [eax + edi*2]
push str._group
push eax
call fcn.005b8c34
add esp, 8
test eax, eax
je 0x41b438
sub eax, dword [ebp - 0x2a0]
sar eax, 1
mov dword [ebp - 0x2a4], eax
jmp 0x41b442
mov dword [ebp - 0x2a4], 0xffffffff
mov esi, dword [0x67e3a8]
test esi, esi
jne 0x41b47c
push 0x68
call fcn.0046f39a
add esp, 4
mov dword [ebp - 0x2e0], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x41b470
push ecx
mov ecx, eax
call fcn.0041d120
mov esi, eax
jmp 0x41b472
xor esi, esi
mov byte [ebp - 4], 0x13
mov dword [0x67e3a8], esi
cmp dword [esi + 4], 3
jl 0x41b8fb
sub esp, 8
lea ecx, [ebp - 0x500]
call fcn.00415530
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x16
call fcn.00407dfc
push 5
push str.TRACE
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x17
call fcn.004075f5
lea ecx, [ebp - 0x178]
call fcn.00407dfc
xor edi, edi
mov byte [ebp - 4], 0x18
cmp dword [esi + 0xc], edi
jle 0x41b4ed
nop
cmp edi, 0xa
jge 0x41b4ed
push 2
push 0x637484
lea ecx, [ebp - 0x178]
call fcn.0041df10
inc edi
cmp edi, dword [esi + 0xc]
jl 0x41b4d0
lea ecx, [ebp - 0x100]
call fcn.00407dfc
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 0x19
call fcn.00407dfc
lea eax, [ebp - 0x148]
mov byte [ebp - 4], 0x1a
push eax
lea eax, [ebp - 0x100]
mov ecx, esi
push eax
call fcn.0041d380
cmp dword [ebp - 0x164], 8
lea eax, [ebp - 0x178]
push 0x2040
cmovae eax, dword [ebp - 0x178]
mov dword [ebp - 0x2a8], eax
lea eax, [ebp - 0x338]
push eax
call fcn.005b7368
mov ecx, dword [ebp - 0x4f0]
lea edx, [ebp - 0x4f0]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, edx
push ecx
call eax
mov eax, dword [ebp - 0xf0]
mov byte [ebp - 4], 0x1b
lea edx, [ebp - 0x100]
cmp dword [ebp - 0xec], 8
lea ecx, [ebp - 0x4f0]
push eax
cmovae edx, dword [ebp - 0x100]
mov byte [ebp - 4], 0x1a
call fcn.004130d0
mov esi, eax
lea eax, [ebp - 0x330]
push 0x10
push eax
call fcn.005b7368
add esp, 0x1c
mov edx, 0x6370dc
mov ecx, esi
mov edi, eax
call fcn.00412d50
mov esi, eax
test esi, esi
jne 0x41b5bd
xor ecx, ecx
jmp 0x41b5c4
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
push dword [edi + 4]
mov eax, dword [edi]
push ecx
call eax
push 0
lea eax, [ebp - 0x390]
push 6
push eax
call fcn.005b7396
mov edx, eax
mov ecx, esi
call fcn.0041e4a0
mov esi, eax
mov eax, 0x30
push 0
push 3
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x380]
push eax
call fcn.005b737c
mov edx, eax
mov ecx, esi
call fcn.0041e4a0
mov ecx, dword [ebp - 0x138]
mov byte [ebp - 4], 0x1c
lea edx, [ebp - 0x148]
cmp dword [ebp - 0x134], 8
push ecx
cmovae edx, dword [ebp - 0x148]
mov ecx, eax
mov byte [ebp - 4], 0x1a
call fcn.004130d0
push 0
mov edi, eax
lea eax, [ebp - 0x370]
push 5
push eax
call fcn.005b7396
mov edx, 0x6370dc
mov ecx, edi
mov esi, eax
call fcn.00412d50
mov edx, esi
mov ecx, eax
call fcn.0041e4a0
mov esi, eax
mov eax, 0x20
push 0x40
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x328]
push eax
call fcn.005b7368
mov ecx, dword [esi]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, esi
push ecx
call eax
mov eax, dword [ebp - 0x120]
add esp, 0x40
mov byte [ebp - 4], 0x1d
lea edx, [ebp - 0x130]
cmp dword [ebp - 0x11c], 8
mov ecx, esi
push eax
cmovae edx, dword [ebp - 0x130]
mov byte [ebp - 4], 0x1a
call fcn.004130d0
add esp, 4
mov edx, 0x6374c4
mov ecx, eax
call fcn.00412d50
mov edx, dword [ebp - 0x2a8]
mov ecx, eax
call fcn.00412d50
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov eax, dword [0x67e5f8]
cmp eax, dword [ecx + 4]
jle 0x41b725
push 0x67e5f8
call fcn.005b583c
add esp, 4
cmp dword [0x67e5f8], 0xffffffff
jne 0x41b725
mov ecx, 0x67e5fc
call fcn.00407dfc
push 0x5f8b00
call fcn.005b547f
push 0x67e5f8
call fcn.005b57fd
add esp, 8
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebp - 0x500]
call fcn.004153f0
mov esi, eax
mov byte [ebp - 4], 0x1e
cmp esi, 0x67e5fc
je 0x41b7e1
mov eax, dword [0x67e610]
cmp eax, 8
jb 0x41b7a1
mov ecx, dword [0x67e5fc]
inc eax
cmp eax, 0x7fffffff
ja 0x41b21e
add eax, eax
cmp eax, 0x1000
jb 0x41b798
test cl, 0x1f
jne 0x41b21e
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x41b21e
sub ecx, eax
cmp ecx, 4
jb 0x41b21e
cmp ecx, 0x23
ja 0x41b21e
mov ecx, eax
push ecx
call fcn.0046f3d1
add esp, 4
mov dword [0x67e60c], 0
xor eax, eax
mov dword [0x67e610], 7
mov word [0x67e5fc], ax
movups xmm0, xmmword [esi]
movups xmmword [0x67e5fc], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x67e60c], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 0x1a
call fcn.00407420
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 0x19
call fcn.00407420
lea ecx, [ebp - 0x100]
mov byte [ebp - 4], 0x18
call fcn.00407420
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x17
call fcn.00407420
lea ecx, [ebp - 0x130]
mov byte [ebp - 4], 0x16
call fcn.00407420
lea ecx, [ebp - 0x498]
mov byte [ebp - 4], 0x1f
call fcn.00415410
mov byte [ebp - 4], 0x20
mov dword [ebp - method.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.virtual_0], vtable.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.0
lea eax, [ebp - 0x498]
mov byte [ebp - 4], 0x21
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.005b72e0
mov byte [ebp - 4], 0x13
add esp, 4
mov ecx, dword [0x67e3a8]
test ecx, ecx
jne 0x41b8a4
push 0x68
call fcn.0046f39a
add esp, 4
mov dword [ebp - 0x2dc], eax
mov byte [ebp - 4], 0x22
test eax, eax
je 0x41b898
push ecx
mov ecx, eax
call fcn.0041d120
mov ecx, eax
jmp 0x41b89a
xor ecx, ecx
mov byte [ebp - 4], 0x13
mov dword [0x67e3a8], ecx
mov eax, dword [0x67e60c]
mov byte [ebp - 4], 0x23
mov edx, 0x67e5fc
cmp dword [0x67e610], 8
push eax
cmovae edx, dword [0x67e5fc]
mov byte [ebp - 4], 0x13
call fcn.004130d0
add esp, 4
mov edx, str.pos_
mov ecx, eax
push dword [ebp - 0x2a4]
call fcn.00412d50
mov ecx, eax
call fcn.0040fdf0
push eax
call fcn.00414150
mov esi, dword [0x67e3a8]
add esp, 4
mov edi, dword [ebp - 0x29c]
cmp dword [ebp - 0x2a4], 0
jl 0x41c7d1
mov eax, dword [ebp - 0x2a0]
cmp edi, dword [eax - 0xc]
jg 0x41b93e
lea eax, [eax + edi*2]
push 0x634b48
push eax
call fcn.005b8c34
mov esi, dword [0x67e3a8]
add esp, 8
test eax, eax
je 0x41b93e
sub eax, dword [ebp - 0x2a0]
sar eax, 1
mov dword [ebp - 0x2a4], eax
jmp 0x41b948
mov dword [ebp - 0x2a4], 0xffffffff
test esi, esi
jne 0x41b97c
push 0x68
call fcn.0046f39a
add esp, 4
mov dword [ebp - 0x2d8], eax
mov byte [ebp - 4], 0x24
test eax, eax
je 0x41b970
push ecx
mov ecx, eax
call fcn.0041d120
mov esi, eax
jmp 0x41b972
xor esi, esi
mov byte [ebp - 4], 0x13
mov dword [0x67e3a8], esi
cmp dword [esi + 4], 3
jl 0x41bdf5
sub esp, 8
lea ecx, [ebp - 0x5b0]
call fcn.00415530
lea ecx, [ebp - 0xd0]
mov byte [ebp - 4], 0x26
call fcn.00407dfc
push 5
push str.TRACE
lea ecx, [ebp - 0xd0]
mov byte [ebp - 4], 0x27
call fcn.004075f5
lea ecx, [ebp - 0x160]
call fcn.00407dfc
xor edi, edi
mov byte [ebp - 4], 0x28
cmp dword [esi + 0xc], edi
jle 0x41b9ed
nop
cmp edi, 0xa
jge 0x41b9ed
push 2
push 0x637484
lea ecx, [ebp - 0x160]
call fcn.0041df10
inc edi
cmp edi, dword [esi + 0xc]
jl 0x41b9d0
lea ecx, [ebp - 0xe8]
call fcn.00407dfc
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x29
call fcn.00407dfc
lea eax, [ebp - 0x118]
mov byte [ebp - 4], 0x2a
push eax
lea eax, [ebp - 0xe8]
mov ecx, esi
push eax
call fcn.0041d380
cmp dword [ebp - 0x14c], 8
lea eax, [ebp - 0x160]
push 0x2040
cmovae eax, dword [ebp - 0x160]
mov dword [ebp - 0x2a8], eax
lea eax, [ebp - 0x320]
push eax
call fcn.005b7368
mov ecx, dword [ebp - 0x5a0]
lea edx, [ebp - 0x5a0]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, edx
push ecx
call eax
mov eax, dword [ebp - 0xd8]
mov byte [ebp - 4], 0x2b
lea edx, [ebp - 0xe8]
cmp dword [ebp - 0xd4], 8
lea ecx, [ebp - 0x5a0]
push eax
cmovae edx, dword [ebp - 0xe8]
mov byte [ebp - 4], 0x2a
call fcn.004130d0
mov esi, eax
lea eax, [ebp - 0x318]
push 0x10
push eax
call fcn.005b7368
add esp, 0x1c
mov edx, 0x6370dc
mov ecx, esi
mov edi, eax
call fcn.00412d50
mov esi, eax
test esi, esi
jne 0x41babd
xor ecx, ecx
jmp 0x41bac4
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
push dword [edi + 4]
mov eax, dword [edi]
push ecx
call eax
push 0
lea eax, [ebp - 0x3a0]
push 6
push eax
call fcn.005b7396
mov edx, eax
mov ecx, esi
call fcn.0041e4a0
mov esi, eax
mov eax, 0x30
push 0
push 3
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x350]
push eax
call fcn.005b737c
mov edx, eax
mov ecx, esi
call fcn.0041e4a0
mov ecx, dword [ebp - 0x108]
mov byte [ebp - 4], 0x2c
lea edx, [ebp - 0x118]
cmp dword [ebp - 0x104], 8
push ecx
cmovae edx, dword [ebp - 0x118]
mov ecx, eax
mov byte [ebp - 4], 0x2a
call fcn.004130d0
push 0
mov edi, eax
lea eax, [ebp - 0x360]
push 5
push eax
call fcn.005b7396
mov edx, 0x6370dc
mov ecx, edi
mov esi, eax
call fcn.00412d50
mov edx, esi
mov ecx, eax
call fcn.0041e4a0
mov esi, eax
mov eax, 0x20
push 0x40
mov ecx, dword [esi]
mov ecx, dword [ecx + 4]
mov word [ecx + esi + 0x40], ax
lea eax, [ebp - 0x340]
push eax
call fcn.005b7368
mov ecx, dword [esi]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, esi
push ecx
call eax
mov eax, dword [ebp - 0xc0]
add esp, 0x40
mov byte [ebp - 4], 0x2d
lea edx, [ebp - 0xd0]
cmp dword [ebp - 0xbc], 8
mov ecx, esi
push eax
cmovae edx, dword [ebp - 0xd0]
mov byte [ebp - 4], 0x2a
call fcn.004130d0
add esp, 4
mov edx, 0x6374c4
mov ecx, eax
call fcn.00412d50
mov edx, dword [ebp - 0x2a8]
mov ecx, eax
call fcn.00412d50
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov eax, dword [0x67e5f8]
cmp eax, dword [ecx + 4]
jle 0x41bc25
push 0x67e5f8
call fcn.005b583c
add esp, 4
cmp dword [0x67e5f8], 0xffffffff
jne 0x41bc25
mov ecx, 0x67e5fc
call fcn.00407dfc
push 0x5f8b00
call fcn.005b547f
push 0x67e5f8
call fcn.005b57fd
add esp, 8
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x5b0]
call fcn.004153f0
mov esi, eax
mov byte [ebp - 4], 0x2e
cmp esi, 0x67e5fc
je 0x41bce1
mov eax, dword [0x67e610]
cmp eax, 8
jb 0x41bca1
mov ecx, dword [0x67e5fc]
inc eax
cmp eax, 0x7fffffff
ja 0x41b21e
add eax, eax
cmp eax, 0x1000
jb 0x41bc98
test cl, 0x1f
jne 0x41b21e
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x41b21e
sub ecx, eax
cmp ecx, 4
jb 0x41b21e
cmp ecx, 0x23
ja 0x41b21e
mov ecx, eax
push ecx
call fcn.0046f3d1
add esp, 4
mov dword [0x67e60c], 0
xor eax, eax
mov dword [0x67e610], 7
mov word [0x67e5fc], ax
movups xmm0, xmmword [esi]
movups xmmword [0x67e5fc], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [0x67e60c], xmm0
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x21c]
mov byte [ebp - 4], 0x2a
call fcn.00407420
lea ecx, [ebp - 0x118]
mov byte [ebp - 4], 0x29
call fcn.00407420
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 0x28
call fcn.00407420
lea ecx, [ebp - 0x160]
mov byte [ebp - 4], 0x27
call fcn.00407420
lea ecx, [ebp - 0xd0]
mov byte [ebp - 4], 0x26
call fcn.00407420
lea ecx, [ebp - 0x548]
mov byte [ebp - 4], 0x2f
call fcn.00415410
mov byte [ebp - 4], 0x30
mov dword [ebp - method.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.virtual_0], vtable.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.0
lea eax, [ebp - 0x548]
mov byte [ebp - 4], 0x31
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.005b72e0
mov byte [ebp - 4], 0x13
add esp, 4
mov ecx, dword [0x67e3a8]
test ecx, ecx
jne 0x41bda4
push 0x68
call fcn.0046f39a
add esp, 4
mov dword [ebp - 0x2d0], eax
mov byte [ebp - 4], 0x32
test eax, eax
je 0x41bd98
push ecx
mov ecx, eax
call fcn.0041d120
mov ecx, eax
jmp 0x41bd9a
xor ecx, ecx
mov byte [ebp - 4], 0x13
mov dword [0x67e3a8], ecx
mov eax, dword [0x67e60c]
mov byte [ebp - 4], 0x33
mov edx, 0x67e5fc
cmp dword [0x67e610], 8
push eax
cmovae edx, dword [0x67e5fc]
mov byte [ebp - 4], 0x13
call fcn.004130d0
add esp, 4
mov edx, str.id_pos
mov ecx, eax
push dword [ebp - 0x2a4]
call fcn.00411a20
mov ecx, eax
call fcn.0040fdf0
push eax
call fcn.00414150
mov edi, dword [ebp - 0x29c]
add esp, 4
mov eax, dword [ebp - 0x2a0]
cmp edi, dword [eax - 0xc]
jg 0x41be27
lea eax, [eax + edi*2]
push str.index
push eax
call fcn.005b8c34
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x41be27
sub ecx, dword [ebp - 0x2a0]
sar ecx, 1
mov dword [ebp - 0x298], ecx
jmp 0x41be31
mov dword [ebp - 0x298], 0xffffffff
mov eax, dword [ebp - 0x2a0]
cmp edi, dword [eax - 0xc]
jg 0x41be63
lea eax, [eax + edi*2]
push str._value_
push eax
call fcn.005b8c34
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x41be63
sub ecx, dword [ebp - 0x2a0]
sar ecx, 1
mov dword [ebp - 0x29c], ecx
jmp 0x41be6c
or eax, 0xffffffff
mov dword [ebp - 0x29c], eax
mov eax, dword [ebp - 0x2a0]
cmp edi, dword [eax - 0xc]
jg 0x41c7d1
lea eax, [eax + edi*2]
push str.__group_
push eax
call fcn.005b8c34
mov edi, eax
add esp, 8
test edi, edi
je 0x41c7d1
sub edi, dword [ebp - 0x2a0]
sar edi, 1
mov dword [ebp - 0x2a8], edi
test edi, edi
jle 0x41c7d1
call fcn.0040cdf0
test eax, eax
je 0x41c7c7
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
cmp ecx, vtable.ATL::CAtlStringMgr.0
jne 0x41becf
lock inc dword [eax + 0x14]
lea esi, [eax + 8]
jmp 0x41bed5
mov ecx, eax
call edx
mov esi, eax
add esi, 0x10
mov dword [ebp - 0x2ac], esi
mov eax, dword [ebp - 0x2a4]
mov byte [ebp - 4], 0x34
test eax, eax
jle 0x41bf0c
lea ecx, [ebp - 0x2ac]
add eax, 2
push ecx
push edi
push eax
lea ecx, [ebp - 0x2a0]
call fcn.0041ac70
mov esi, dword [ebp - 0x2ac]
add esp, 0xc
call fcn.0040cdf0
test eax, eax
je 0x41c7c7
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
cmp ecx, vtable.ATL::CAtlStringMgr.0
jne 0x41bf2f
lock inc dword [eax + 0x14]
lea edi, [eax + 8]
jmp 0x41bf35
mov ecx, eax
call edx
mov edi, eax
add edi, 0x10
mov dword [ebp - 0x2b8], edi
mov eax, dword [ebp - 0x298]
mov byte [ebp - 4], 0x35
test eax, eax
jle 0x41bf71
lea ecx, [ebp - 0x2b8]
add eax, 5
push ecx
push dword [ebp - 0x2a8]
lea ecx, [ebp - 0x2a0]
push eax
call fcn.0041ac70
mov edi, dword [ebp - 0x2b8]
add esp, 0xc
call fcn.0040cdf0
test eax, eax
je 0x41c7c7
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
cmp ecx, vtable.ATL::CAtlStringMgr.0
jne 0x41bf94
lock inc dword [eax + 0x14]
add eax, 8
jmp 0x41bf98
mov ecx, eax
call edx
add eax, 0x10
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0x29c]
mov byte [ebp - 4], 0x36
test ecx, ecx
jle 0x41c08a
mov eax, dword [ebp - 0x2a0]
cmp ecx, dword [eax - 0xc]
jg 0x41c08a
lea eax, [eax + ecx*2]
push str.__value_
push eax
call fcn.005b8c34
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x41c08a
sub ecx, dword [ebp - 0x2a0]
sar ecx, 1
test ecx, ecx
jle 0x41c08a
mov eax, dword [ebp - 0x29c]
sub ecx, eax
sub ecx, 7
add eax, 7
push ecx
push eax
lea eax, [ebp - 0x2b4]
push eax
lea ecx, [ebp - 0x2a0]
call fcn.0040ffd0
push eax
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 4], 0x37
call fcn.00410290
mov byte [ebp - 4], 0x36
or eax, 0xffffffff
mov ecx, dword [ebp - 0x2b4]
add ecx, 0xfffffff0
lock xadd dword [ecx + 0xc], eax
dec eax
test eax, eax
jg 0x41c08a
mov edx, dword [ecx]
push ecx
mov eax, dword [edx]
mov edx, dword [eax + 4]
mov dword [ebp - 0x298], edx
mov edx, dword [ecx]
cmp eax, vtable.ATL::CAtlStringMgr.0
jne 0x41c082
mov edx, dword [edx + 4]
mov eax, dword [edx]
mov esi, dword [eax + 4]
mov dword [ebp - 0x298], esi
mov esi, dword [ebp - 0x2ac]
cmp eax, vtable.ATL::CWin32Heap.0
jne 0x41c078
push 0
push dword [edx + 4]
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x41c08a
mov ecx, edx
call dword [ebp - 0x298]
jmp 0x41c08a
mov ecx, edx
call dword [ebp - 0x298]
mov eax, dword [0x67e3a8]
mov dword [ebp - 0x29c], eax
test eax, eax
jne 0x41c0cc
push 0x68
call fcn.0046f39a
add esp, 4
mov dword [ebp - 0x2c8], eax
mov byte [ebp - 4], 0x38
test eax, eax
je 0x41c0bb
push ecx
mov ecx, eax
call fcn.0041d120
jmp 0x41c0bd
xor eax, eax
mov byte [ebp - 4], 0x36
mov dword [ebp - 0x29c], eax
mov dword [0x67e3a8], eax
cmp dword [eax + 4], 3
jl 0x41c5a8
sub esp, 8
lea ecx, [ebp - 0x660]
call fcn.00415530
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x3a
call fcn.00407dfc
push 5
push str.TRACE
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x3b
call fcn.004075f5
lea ecx, [ebp - 0x70]
call fcn.00407dfc
mov ecx, dword [ebp - 0x29c]
xor eax, eax
mov byte [ebp - 4], 0x3c
mov dword [ebp - 0x298], eax
cmp dword [ecx + 0xc], eax
jle 0x41c14e
cmp eax, 0xa
jge 0x41c14e
push 2
push 0x637484
lea ecx, [ebp - 0x70]
call fcn.0041df10
mov eax, dword [ebp - 0x298]
mov ecx, dword [ebp - 0x29c]
inc eax
mov dword [ebp - 0x298], eax
cmp eax, dword [ecx + 0xc]
jl 0x41c122
lea ecx, [ebp - 0xa0]
call fcn.00407dfc
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x3d
call fcn.00407dfc
mov ecx, dword [ebp - 0x29c]
lea eax, [ebp - 0xb8]
push eax
lea eax, [ebp - 0xa0]
mov byte [ebp - 4], 0x3e
push eax
call fcn.0041d380
cmp dword [ebp - 0x5c], 8
lea eax, [ebp - 0x70]
push 0x2040
cmovae eax, dword [ebp - 0x70]
mov dword [ebp - 0x29c], eax
lea eax, [ebp - 0x308]
push eax
call fcn.005b7368
mov ecx, dword [ebp - 0x650]
lea edx, [ebp - 0x650]
push dword [eax + 4]
mov ecx, dword [ecx + 4]
mov eax, dword [eax]
add ecx, edx
push ecx
call eax
mov eax, dword [ebp - 0x90]
mov byte [ebp - 4], 0x3f
lea edx, [ebp - 0xa0]
cmp dword [ebp - 0x8c], 8
lea ecx, [ebp - 0x650]
push eax
cmovae edx, dword [ebp - 0xa0]
mov byte [ebp - 4], 0x3e
call fcn.004130d0
mov dword [ebp - 0x298], eax
lea eax, [ebp - 0x2f8]
push 0x10
push eax
call fcn.005b7368
mov ecx, dword [ebp - 0x298]
add esp, 0x1c
mov edx, 0x6370dc
mov dword [ebp - 0x2a4], eax
call fcn.00412d50
mov edx, eax
mov dword [ebp - 0x298], edx
test edx, edx
jne 0x41c22b
xor ecx, ecx
jmp 0x41c232
mov eax, dword [edx]
mov ecx, dword [eax + 4]
add ecx, edx
mov eax, dword [ebp - 0x2a4]
push dword [eax + 4]
mov eax, dword [eax]
push ecx
call eax
push 0
lea eax, [ebp - 0x50]
push 6
push eax
call fcn.005b7396
mov ecx, dword [ebp - 0x298]
mov edx, eax
call fcn.0041e4a0
mov dword [ebp - 0x298], eax
push 0
push 3
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
add ecx, eax
mov eax, 0x30
mov word [ecx + 0x40], ax
lea eax, [ebp - 0x38]
push eax
call fcn.005b737c
mov ecx, dword [ebp - 0x298]
mov edx, eax
call fcn.0041e4a0
mov ecx, dword [ebp - 0xa8]
mov byte [ebp - 4], 0x40
lea edx, [ebp - 0xb8]
cmp dword [ebp - 0xa4], 8
push ecx
cmovae edx, dword [ebp - 0xb8]
mov ecx, eax
mov byte [ebp - 4], 0x3e
call fcn.004130d0
push 0
mov dword [ebp - 0x298], eax
lea eax, [ebp - 0x80]
push 5
push eax
call fcn.005b7396
mov ecx, dword [ebp - 0x298]
mov edx, 0x6370dc
mov dword [ebp - 0x2a4], eax
call fcn.00412d50
mov edx, dword [ebp - 0x2a4]
mov ecx, eax
call fcn.0041e4a0
mov dword [ebp - 0x298], eax
push 0x40
mov ecx, dword [eax]
mov ecx, dword [ecx + 4]
add ecx, eax
mov eax, 0x20
mov word [ecx + 0x40], ax
lea eax, [ebp - 0x2e8]
push eax
call fcn.005b7368
mov edx, dword [ebp - 0x298]
push dword [eax + 4]
mov ecx, dword [edx]
mov eax, dword [eax]
mov ecx, dword [ecx + 4]
add ecx, edx
push ecx
call eax
mov eax, dword [ebp - 0x18]
add esp, 0x40
mov ecx, dword [ebp - 0x298]
lea edx, [ebp - 0x28]
mov byte [ebp - 4], 0x41
cmp dword [ebp - 0x14], 8
push eax
cmovae edx, dword [ebp - 0x28]
mov byte [ebp - 4], 0x3e
call fcn.004130d0
add esp, 4
mov edx, 0x6374c4
mov ecx, eax
call fcn.00412d50
mov edx, dword [ebp - 0x29c]
mov ecx, eax
call fcn.00412d50
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov eax, dword [0x67e5f8]
cmp eax, dword [ecx + 4]
jle 0x41c3b0
push 0x67e5f8
call fcn.005b583c
add esp, 4
cmp dword [0x67e5f8], 0xffffffff
jne 0x41c3b0
mov ecx, 0x67e5fc
call fcn.00407dfc
push 0x5f8b00
call fcn.005b547f
push 0x67e5f8
call fcn.005b57fd
add esp, 8
lea eax, [ebp - 0x204]
push eax
lea ecx, [ebp - 0x660]
call fcn.004153f0
mov dword [ebp - 0x298], eax
mov byte [ebp - 4], 0x42
cmp eax, 0x67e5fc
je 0x41c479
mov ecx, dword [0x67e610]
cmp ecx, 8
jb 0x41c438
lea eax, [ecx + 1]
mov ecx, dword [0x67e5fc]
cmp eax, 0x7fffffff
ja 0x41b21e
add eax, eax
cmp eax, 0x1000
jb 0x41c429
test cl, 0x1f
jne 0x41b21e
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x41b21e
sub ecx, eax
cmp ecx, 4
jb 0x41b21e
cmp ecx, 0x23
ja 0x41b21e
mov ecx, eax
push ecx
call fcn.0046f3d1
mov eax, dword [ebp - 0x298]
add esp, 4
mov dword [0x67e60c], 0
xor ecx, ecx
mov dword [0x67e610], 7
mov word [0x67e5fc], cx
movups xmm0, xmmword [eax]
movups xmmword [0x67e5fc], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [0x67e60c], xmm0
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], 7
mov word [eax], cx
lea ecx, [ebp - 0x204]
mov byte [ebp - 4], 0x3e
call fcn.00407420
lea ecx, [ebp - 0xb8]
mov byte [ebp - 4], 0x3d
call fcn.00407420
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x3c
call fcn.00407420
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0x3b
call fcn.00407420
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x3a
call fcn.00407420
lea ecx, [ebp - 0x5f8]
mov byte [ebp - 4], 0x43
call fcn.00415410
mov byte [ebp - 4], 0x44
mov dword [ebp - method.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.virtual_0], vtable.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.0
lea eax, [ebp - 0x5f8]
mov byte [ebp - 4], 0x45
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.005b72e0
mov byte [ebp - 4], 0x36
add esp, 4
mov ecx, dword [0x67e3a8]
test ecx, ecx
jne 0x41c536
push 0x68
call fcn.0046f39a
add esp, 4
mov dword [ebp - 0x2c0], eax
mov byte [ebp - 4], 0x46
test eax, eax
je 0x41c52a
push ecx
mov ecx, eax
call fcn.0041d120
mov ecx, eax
jmp 0x41c52c
xor ecx, ecx
mov byte [ebp - 4], 0x36
mov dword [0x67e3a8], ecx
mov eax, dword [0x67e60c]
mov byte [ebp - 4], 0x47
mov edx, 0x67e5fc
cmp dword [0x67e610], 8
push eax
cmovae edx, dword [0x67e5fc]
mov byte [ebp - 4], 0x36
call fcn.004130d0
mov edx, 0x637410
mov ecx, eax
call fcn.00412d50
mov edx, esi
mov dword [ebp - 0x298], eax
mov ecx, eax
call fcn.00412d50
mov ecx, dword [ebp - 0x298]
mov edx, 0x63740c
call fcn.00411a20
mov edx, dword [ebp - 0x2b0]
mov ecx, eax
mov dword [ebp - 0x298], eax
call fcn.00412d50
push dword [ebp - 0x298]
call fcn.00414150
add esp, 8
cmp dword [esi - 0xc], 0
jle 0x41c6b2
lea eax, [ebp - 0x2ac]
push eax
lea ecx, [ebp - 0x25c]
call fcn.0041ecb0
mov dword [ebp - 0x298], eax
push edi
mov byte [ebp - 4], 0x48
call fcn.005c0c25
add esp, 4
lea ecx, [ebp - 0x294]
push eax
push dword [ebp - 0x298]
call fcn.0041e740
mov byte [ebp - 4], 0x49
lea ecx, [ebp - 0x1e4]
push eax
mov dword [ebp - method.srl::SystemValue.virtual_0], vtable.srl::SystemValue.0
call fcn.0041e7e0
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0x1ac]
push dword [ebp - 0x2b0]
call fcn.00407456
mov ecx, dword [ebp - 0x2bc]
lea eax, [ebp - 0x1ec]
push eax
mov byte [ebp - 4], 0x4c
call fcn.00419d00
mov byte [ebp - 4], 0x4d
lea ecx, [ebp - 0x1ac]
mov dword [ebp - method.srl::SystemValue.virtual_0], vtable.srl::SystemValue.0
call fcn.00407420
mov byte [ebp - 4], 0x4e
mov dword [ebp - method.srl::SystemValueID.virtual_0], vtable.srl::SystemValueID.0
mov byte [ebp - 4], 0x4f
lea ecx, [ebp - 0x1d4]
mov dword [ebp - method.srl::GroupID.virtual_0], vtable.srl::GroupID.0
call fcn.00407420
mov byte [ebp - 4], 0x50
mov dword [ebp - method.srl::SystemValueID.virtual_0], vtable.srl::SystemValueID.0
mov byte [ebp - 4], 0x51
lea ecx, [ebp - 0x284]
mov dword [ebp - method.srl::GroupID.virtual_0], vtable.srl::GroupID.0
call fcn.00407420
mov byte [ebp - 4], 0x52
lea ecx, [ebp - 0x254]
mov dword [ebp - method.srl::GroupID.virtual_0], vtable.srl::GroupID.0
call fcn.00407420
mov byte [ebp - 4], 0x36
mov eax, dword [ebp - 0x2a8]
add eax, 8
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x2b0]
mov dword [ebp - 0x29c], eax
add ecx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [ecx + 0xc], eax
dec eax
test eax, eax
jg 0x41c72c
mov edx, dword [ecx]
push ecx
mov eax, dword [edx]
mov edx, dword [eax + 4]
mov dword [ebp - 0x2a8], edx
mov edx, dword [ecx]
cmp eax, vtable.ATL::CAtlStringMgr.0
jne 0x41c724
mov edx, dword [edx + 4]
mov eax, dword [edx]
mov esi, dword [eax + 4]
mov dword [ebp - 0x2a8], esi
mov esi, dword [ebp - 0x2ac]
cmp eax, vtable.ATL::CWin32Heap.0
jne 0x41c71a
push 0
push dword [edx + 4]
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x41c72c
mov ecx, edx
call dword [ebp - 0x2a8]
jmp 0x41c72c
mov ecx, edx
call dword [ebp - 0x2a8]
mov byte [ebp - 4], 0x34
add edi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x41c76d
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
mov edx, dword [eax + 4]
cmp eax, vtable.ATL::CAtlStringMgr.0
jne 0x41c76b
mov ecx, dword [ecx + 4]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
cmp eax, vtable.ATL::CWin32Heap.0
jne 0x41c76b
push 0
push dword [ecx + 4]
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x41c76d
call edx
mov byte [ebp - 4], 0x13
add esi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [esi + 0xc], eax
dec eax
mov edi, dword [ebp - 0x29c]
test eax, eax
jg 0x41b400
mov ecx, dword [esi]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
cmp eax, vtable.ATL::CAtlStringMgr.0
jne 0x41c7b9
mov ecx, dword [ecx + 4]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
cmp eax, vtable.ATL::CWin32Heap.0
jne 0x41c7b9
push esi
push 0
push dword [ecx + 4]
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x41b400
push esi
call edx
mov edi, dword [ebp - 0x29c]
jmp 0x41b400
push 0x80004005
call fcn.004021c2
lea ecx, [ebp - 0x2a0]
mov byte [ebp - 4], 1
call fcn.0040d440
lea ecx, [ebp - 0x194]
mov dword [ebp - 4], 0xffffffff
call fcn.004141f0
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.005b5208
mov esp, ebp
pop ebp
ret 4