Function at 0x40e8f0
Capabilities:
Get graphical window text

Disassembly:
push 0xffffffffffffffff
push 0x45ce3b
mov eax, dword fs:[0]
push eax
sub esp, 0x238
push ebx
push ebp
push esi
push edi
mov eax, dword [0x77a1d4]
xor eax, esp
push eax
lea eax, [esp + 0x24c]
mov dword fs:[0], eax
mov esi, ecx
xor ebx, ebx
mov dword [esp + 0x14], ebx
mov ecx, dword [esi + 0x20]
lea eax, [esp + 0xdc]
push eax
push ecx
mov dword [esp + 0x25c], ebx
call dword [sym.imp.USER32.dll_GetClientRect]
add dword [esp + 0xe0], 0x1e
push 1
push esi
lea edx, [esp + 0xe4]
push edx
lea ebp, [esi + 0x5c]
push 0x50800001
mov ecx, ebp
call fcn.0042e265
mov eax, dword [esi + 0x7c]
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
push 0xf097b1
push ebx
push 0x1001
push eax
call edi
mov ecx, dword [esi + 0x7c]
push ebx
push ebx
push 0x1024
push ecx
call edi
mov edx, dword [esi + 0x7c]
push 0xf097b1
push ebx
push 0x1026
push edx
call edi
mov eax, dword [esi + 0x7c]
push 0x31
push ebx
push 0x1036
push eax
call edi
push 0xffffffffffffffff
push 0x64
push ebx
push 0x4624a4
push ebx
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x460a58
push 1
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x460a4c
push 2
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x460a38
push 3
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x46235c
push 4
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x460a2c
push 5
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x4623d0
push 6
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x462498
push 7
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x4623c4
push 8
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x46248c
push 9
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x460f60
push 0xa
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x460f58
push 0xb
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x4623b8
push 0xc
mov ecx, ebp
call fcn.0042e3c2
push 0xffffffffffffffff
push 0x64
push ebx
push 0x4623ac
push 0xd
mov ecx, ebp
call fcn.0042e3c2
lea ecx, [esp + 0x1c]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
lea edx, [esp + 0x25c]
push edx
push 0x77b630
mov ecx, 0x77b588
mov byte [esp + 0x25c], 1
call fcn.0040ade0
mov eax, dword [0x77b630]
cmp eax, ebx
jne 0x40eae9
push 0x80004003
call fcn.0045a7b0
mov ecx, dword [eax]
lea edx, [esp + 0x30]
push edx
mov esi, eax
push eax
mov eax, dword [ecx + 0x68]
mov dword [esp + 0x38], ebx
call eax
cmp eax, ebx
jge 0x40eb0c
push 0x460748
push esi
push eax
call fcn.0045a7d0
cmp dword [esp + 0x30], ebx
jne 0x40eb1d
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
jmp 0x40fc54
call fcn.0041b555
xor ecx, ecx
cmp eax, ebx
setne cl
cmp ecx, ebx
jne 0x40eb37
push 0x80004005
call fcn.00401010
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
lea edi, [eax + 0x10]
mov dword [esp + 0x18], edi
fldz
mov eax, dword [0x77b630]
fstp qword [esp + 0x5c]
mov byte [esp + 0x254], 2
mov dword [esp + 0x64], ebx
cmp eax, ebx
jne 0x40eb6c
push 0x80004003
call fcn.0045a7b0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x98]
push eax
mov esi, eax
call edx
cmp eax, ebx
jge 0x40eb89
push 0x460748
push esi
push eax
call fcn.0045a7d0
cmp dword [esp + 0x30], ebx
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov dword [esp + 0x2c], ebx
jle 0x40fc30
lea ecx, [ecx]
mov eax, 8
push str.rkno
mov word [esp + 0x120], ax
call fcn.0045a850
mov dword [esp + 0x124], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 3
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0x11c]
push edx
lea eax, [esp + 0x210]
push eax
call fcn.00402c50
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 4
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, ebx
jl 0x40fda6
lea edx, [esp + 0x20c]
push edx
call esi
lea eax, [esp + 0x11c]
push eax
mov byte [esp + 0x258], 2
call esi
cmp word [esp + 0x1c], 1
jne 0x40f2e9
mov edx, 0x467455
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40ec37
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x20]
call fcn.00401720
test byte [esp + 0x14], 1
mov dword [esp + 0x254], 2
je 0x40eca8
mov eax, dword [esp + 0x44]
and dword [esp + 0x14], 0xfffffffe
cmp eax, ebx
je 0x40eca8
mov esi, eax
add eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
cmp eax, ebx
jne 0x40eca4
cmp esi, ebx
je 0x40eca4
mov eax, dword [esi]
cmp eax, ebx
je 0x40ec8b
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x40ec9b
push eax
call fcn.004199cf
add esp, 4
push esi
call fcn.004199cf
add esp, 4
mov dword [esp + 0x44], ebx
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x2c]
push ebx
push ebx
push ebx
push ebx
push eax
push edi
push 1
mov ecx, ebp
call fcn.0042e40e
mov ecx, 8
push str.rkid
mov word [esp + 0xa0], cx
call fcn.0045a850
mov dword [esp + 0xa4], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 6
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0x9c]
push edx
lea eax, [esp + 0x190]
push eax
call fcn.00402c50
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 7
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, ebx
jl 0x40fda6
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [esp + 0x18c]
push edx
call esi
lea eax, [esp + 0x9c]
push eax
mov byte [esp + 0x258], 2
call esi
cmp word [esp + 0x1c], 1
jne 0x40f330
mov edx, 0x467455
mov eax, edx
lea esi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40ed60
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x20]
call fcn.00401720
test byte [esp + 0x14], 2
mov dword [esp + 0x254], 2
je 0x40edd1
mov eax, dword [esp + 0x58]
and dword [esp + 0x14], 0xfffffffd
cmp eax, ebx
je 0x40edd1
mov esi, eax
add eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
cmp eax, ebx
jne 0x40edcd
cmp esi, ebx
je 0x40edcd
mov eax, dword [esi]
cmp eax, ebx
je 0x40edb4
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x40edc4
push eax
call fcn.004199cf
add esp, 4
push esi
call fcn.004199cf
add esp, 4
mov dword [esp + 0x58], ebx
mov eax, dword [esp + 0x18]
push eax
push 1
push edi
mov ecx, ebp
call fcn.0042e2c9
mov ecx, 8
push str.rkname
mov word [esp + 0x100], cx
call fcn.0045a850
mov dword [esp + 0x104], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 9
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0xfc]
push edx
lea eax, [esp + 0x1f0]
push eax
call fcn.00402c50
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 0xa
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, ebx
jl 0x40fda6
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [esp + 0x1ec]
push edx
call esi
lea eax, [esp + 0xfc]
push eax
mov byte [esp + 0x258], 2
call esi
cmp word [esp + 0x1c], 1
jne 0x40f377
mov edx, 0x467455
mov eax, edx
lea esi, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40ee80
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x20]
call fcn.00401720
test byte [esp + 0x14], 4
mov dword [esp + 0x254], 2
je 0x40eef1
mov eax, dword [esp + 0x3c]
and dword [esp + 0x14], 0xfffffffb
cmp eax, ebx
je 0x40eef1
mov esi, eax
add eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
cmp eax, ebx
jne 0x40eeed
cmp esi, ebx
je 0x40eeed
mov eax, dword [esi]
cmp eax, ebx
je 0x40eed4
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x40eee4
push eax
call fcn.004199cf
add esp, 4
push esi
call fcn.004199cf
add esp, 4
mov dword [esp + 0x3c], ebx
mov eax, dword [esp + 0x18]
push eax
push 2
push edi
mov ecx, ebp
call fcn.0042e2c9
mov ecx, 8
push str.rkspec
mov word [esp + 0xc0], cx
call fcn.0045a850
mov dword [esp + 0xc4], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 0xc
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0xbc]
push edx
lea eax, [esp + 0x1b0]
push eax
call fcn.00402c50
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 0xd
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, ebx
jl 0x40fda6
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [esp + 0x1ac]
push edx
call esi
lea eax, [esp + 0xbc]
push eax
mov byte [esp + 0x258], 2
call esi
cmp word [esp + 0x1c], 1
jne 0x40f3be
mov edx, 0x467455
mov eax, edx
lea esi, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40efa0
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x20]
call fcn.00401720
test byte [esp + 0x14], 8
mov dword [esp + 0x254], 2
je 0x40f011
mov eax, dword [esp + 0x50]
and dword [esp + 0x14], 0xfffffff7
cmp eax, ebx
je 0x40f011
mov esi, eax
add eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
cmp eax, ebx
jne 0x40f00d
cmp esi, ebx
je 0x40f00d
mov eax, dword [esi]
cmp eax, ebx
je 0x40eff4
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x40f004
push eax
call fcn.004199cf
add esp, 4
push esi
call fcn.004199cf
add esp, 4
mov dword [esp + 0x50], ebx
mov eax, dword [esp + 0x18]
push eax
push 3
push edi
mov ecx, ebp
call fcn.0042e2c9
mov ecx, 8
push str.rkkind
mov word [esp + 0x140], cx
call fcn.0045a850
mov dword [esp + 0x144], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 0xf
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0x13c]
push edx
lea eax, [esp + 0x230]
push eax
call fcn.00402c50
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 0x10
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, ebx
jl 0x40fda6
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [esp + 0x22c]
push edx
call esi
lea eax, [esp + 0x13c]
push eax
mov byte [esp + 0x258], 2
call esi
cmp word [esp + 0x1c], 1
jne 0x40f405
mov edx, 0x467455
mov eax, edx
lea esi, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40f0c0
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x20]
call fcn.00401720
test byte [esp + 0x14], 0x10
mov dword [esp + 0x254], 2
je 0x40f131
mov eax, dword [esp + 0x34]
and dword [esp + 0x14], 0xffffffef
cmp eax, ebx
je 0x40f131
mov esi, eax
add eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
cmp eax, ebx
jne 0x40f12d
cmp esi, ebx
je 0x40f12d
mov eax, dword [esi]
cmp eax, ebx
je 0x40f114
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x40f124
push eax
call fcn.004199cf
add esp, 4
push esi
call fcn.004199cf
add esp, 4
mov dword [esp + 0x34], ebx
mov eax, dword [esp + 0x18]
push eax
push 4
push edi
mov ecx, ebp
call fcn.0042e2c9
mov ecx, 8
push str.rkunit
mov word [esp + 0x70], cx
call fcn.0045a850
mov dword [esp + 0x74], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 0x12
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0x6c]
push edx
lea eax, [esp + 0x1d0]
push eax
call fcn.00402c50
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 0x13
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, ebx
jl 0x40fda6
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [esp + 0x1cc]
push edx
call esi
lea eax, [esp + 0x6c]
push eax
mov byte [esp + 0x258], 2
call esi
cmp word [esp + 0x1c], 1
jne 0x40f44c
mov edx, 0x467455
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40f1d1
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x20]
call fcn.00401720
test byte [esp + 0x14], 0x20
mov dword [esp + 0x254], 2
je 0x40f242
mov eax, dword [esp + 0x54]
and dword [esp + 0x14], 0xffffffdf
cmp eax, ebx
je 0x40f242
mov esi, eax
add eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
cmp eax, ebx
jne 0x40f23e
cmp esi, ebx
je 0x40f23e
mov eax, dword [esi]
cmp eax, ebx
je 0x40f225
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x40f235
push eax
call fcn.004199cf
add esp, 4
push esi
call fcn.004199cf
add esp, 4
mov dword [esp + 0x54], ebx
mov eax, dword [esp + 0x18]
push eax
push 5
push edi
mov ecx, ebp
call fcn.0042e2c9
mov ecx, 8
push str.rkaccount
mov word [esp + 0x80], cx
call fcn.0045a850
mov dword [esp + 0x84], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 0x15
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0x7c]
push edx
lea eax, [esp + 0x170]
push eax
call fcn.00402c50
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 0x16
call esi
cmp eax, ebx
jl 0x40fda6
lea edx, [esp + 0x16c]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [esp + 0x7c]
push eax
mov byte [esp + 0x258], 2
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp word [esp + 0x1c], 1
jne 0x40f493
fldz
jmp 0x40f497
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x48]
call fcn.00403110
mov esi, dword [eax]
or dword [esp + 0x14], 1
mov byte [esp + 0x254], 5
cmp esi, ebx
je 0x40f31f
cmp dword [esi + 4], ebx
jne 0x40f31a
mov edx, dword [esi]
push edx
call fcn.0045a9d0
mov dword [esi + 4], eax
mov edx, dword [esi + 4]
jmp 0x40f321
xor edx, edx
cmp edx, ebx
jne 0x40ec32
xor eax, eax
jmp 0x40ec40
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x5c]
call fcn.00403110
mov esi, dword [eax]
or dword [esp + 0x14], 2
mov byte [esp + 0x254], 8
cmp esi, ebx
je 0x40f366
cmp dword [esi + 4], ebx
jne 0x40f361
mov edx, dword [esi]
push edx
call fcn.0045a9d0
mov dword [esi + 4], eax
mov edx, dword [esi + 4]
jmp 0x40f368
xor edx, edx
cmp edx, ebx
jne 0x40ed57
xor eax, eax
jmp 0x40ed69
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x40]
call fcn.00403110
mov esi, dword [eax]
or dword [esp + 0x14], 4
mov byte [esp + 0x254], 0xb
cmp esi, ebx
je 0x40f3ad
cmp dword [esi + 4], ebx
jne 0x40f3a8
mov edx, dword [esi]
push edx
call fcn.0045a9d0
mov dword [esi + 4], eax
mov edx, dword [esi + 4]
jmp 0x40f3af
xor edx, edx
cmp edx, ebx
jne 0x40ee78
xor eax, eax
jmp 0x40ee89
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x54]
call fcn.00403110
mov esi, dword [eax]
or dword [esp + 0x14], 8
mov byte [esp + 0x254], 0xe
cmp esi, ebx
je 0x40f3f4
cmp dword [esi + 4], ebx
jne 0x40f3ef
mov edx, dword [esi]
push edx
call fcn.0045a9d0
mov dword [esi + 4], eax
mov edx, dword [esi + 4]
jmp 0x40f3f6
xor edx, edx
cmp edx, ebx
jne 0x40ef98
xor eax, eax
jmp 0x40efa9
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x38]
call fcn.00403110
mov esi, dword [eax]
or dword [esp + 0x14], 0x10
mov byte [esp + 0x254], 0x11
cmp esi, ebx
je 0x40f43b
cmp dword [esi + 4], ebx
jne 0x40f436
mov edx, dword [esi]
push edx
call fcn.0045a9d0
mov dword [esi + 4], eax
mov edx, dword [esi + 4]
jmp 0x40f43d
xor edx, edx
cmp edx, ebx
jne 0x40f0b8
xor eax, eax
jmp 0x40f0c9
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x58]
call fcn.00403110
mov esi, dword [eax]
or dword [esp + 0x14], 0x20
mov byte [esp + 0x254], 0x14
cmp esi, ebx
je 0x40f482
cmp dword [esi + 4], ebx
jne 0x40f47d
mov edx, dword [esi]
push edx
call fcn.0045a9d0
mov dword [esi + 4], eax
mov edx, dword [esi + 4]
jmp 0x40f484
xor edx, edx
cmp edx, ebx
jne 0x40f1cc
xor eax, eax
jmp 0x40f1da
fld qword [esp + 0x24]
sub esp, 8
fstp qword [esp]
lea ecx, [esp + 0x20]
push str._.2f
push ecx
call fcn.004031c0
mov edx, dword [esp + 0x28]
add esp, 0x10
push edx
push 6
push edi
mov ecx, ebp
call fcn.0042e2c9
mov eax, 8
push str.rkprice
mov word [esp + 0x90], ax
call fcn.0045a850
mov dword [esp + 0x94], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 0x17
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0x8c]
push edx
lea eax, [esp + 0x180]
push eax
call fcn.00402c50
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 0x18
call esi
cmp eax, ebx
jl 0x40fda6
lea edx, [esp + 0x17c]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [esp + 0x8c]
push eax
mov byte [esp + 0x258], 2
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp word [esp + 0x1c], 1
jne 0x40f54f
fldz
jmp 0x40f553
fld qword [esp + 0x24]
sub esp, 8
fstp qword [esp]
lea ecx, [esp + 0x20]
push str._.2f
push ecx
call fcn.004031c0
mov edx, dword [esp + 0x28]
add esp, 0x10
push edx
push 7
push edi
mov ecx, ebp
call fcn.0042e2c9
mov eax, 8
push str.rkvalue
mov word [esp + 0xb0], ax
call fcn.0045a850
mov dword [esp + 0xb4], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 0x19
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0xac]
push edx
lea eax, [esp + 0x1a0]
push eax
call fcn.00402c50
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 0x1a
call esi
cmp eax, ebx
jl 0x40fda6
lea edx, [esp + 0x19c]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [esp + 0xac]
push eax
mov byte [esp + 0x258], 2
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp word [esp + 0x1c], 1
jne 0x40f60b
fldz
jmp 0x40f60f
fld qword [esp + 0x24]
sub esp, 8
fstp qword [esp]
lea ecx, [esp + 0x20]
push str._.2f
push ecx
call fcn.004031c0
mov edx, dword [esp + 0x28]
add esp, 0x10
push edx
push 8
push edi
mov ecx, ebp
call fcn.0042e2c9
mov eax, 8
push str.rkdate
mov word [esp + 0xd0], ax
call fcn.0045a850
mov dword [esp + 0xd4], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 0x1b
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0xcc]
push edx
lea eax, [esp + 0x1c0]
push eax
call fcn.00402c50
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 0x1c
call esi
cmp eax, ebx
jl 0x40fda6
lea edx, [esp + 0x1bc]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [esp + 0xcc]
push eax
mov byte [esp + 0x258], 2
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp word [esp + 0x1c], 7
je 0x40f6fa
push 7
push ebx
lea edx, [esp + 0x24]
push edx
lea eax, [esp + 0x168]
xor ecx, ecx
push eax
mov word [esp + 0x16c], cx
call dword [sym.imp.OLEAUT32.dll_VariantTimeToDosDateTime]
test eax, eax
jl 0x40f6f0
fld qword [esp + 0x164]
jmp 0x40f6fe
mov dword [esp + 0x64], 1
jmp 0x40f706
fld qword [esp + 0x24]
fstp qword [esp + 0x5c]
mov dword [esp + 0x64], ebx
push str._Y__m__d
lea ecx, [esp + 0x6c]
push ecx
lea ecx, [esp + 0x64]
call fcn.004050a0
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x258], 0x1d
call fcn.004019b0
mov eax, dword [esp + 0x68]
add eax, 0xfffffff0
mov byte [esp + 0x254], 2
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x40f753
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [esp + 0x18]
push ecx
push 9
push edi
mov ecx, ebp
call fcn.0042e2c9
mov edx, 8
push str.rkdeal_person
mov word [esp + 0xf0], dx
call fcn.0045a850
mov dword [esp + 0xf4], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 0x1e
cmp ecx, ebx
je 0x40eadf
lea eax, [esp + 0xec]
push eax
lea edx, [esp + 0x1e0]
push edx
call fcn.00402c50
push eax
lea eax, [esp + 0x20]
push eax
mov byte [esp + 0x25c], 0x1f
call esi
cmp eax, ebx
jl 0x40fda6
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea ecx, [esp + 0x1dc]
push ecx
call esi
lea edx, [esp + 0xec]
push edx
mov byte [esp + 0x258], 2
call esi
cmp word [esp + 0x1c], 1
jne 0x40fc81
mov edx, 0x467455
mov eax, edx
lea esi, [eax + 1]
jmp 0x40f800
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40f800
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x20]
call fcn.00401720
test byte [esp + 0x14], 0x40
mov dword [esp + 0x254], 2
je 0x40f871
mov eax, dword [esp + 0x4c]
and dword [esp + 0x14], 0xffffffbf
cmp eax, ebx
je 0x40f871
mov esi, eax
add eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
cmp eax, ebx
jne 0x40f86d
cmp esi, ebx
je 0x40f86d
mov eax, dword [esi]
cmp eax, ebx
je 0x40f854
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x40f864
push eax
call fcn.004199cf
add esp, 4
push esi
call fcn.004199cf
add esp, 4
mov dword [esp + 0x4c], ebx
mov edx, dword [esp + 0x18]
push edx
push 0xa
push edi
mov ecx, ebp
call fcn.0042e2c9
mov eax, 8
push str.rksave_person
mov word [esp + 0x110], ax
call fcn.0045a850
mov dword [esp + 0x114], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 0x21
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0x10c]
push edx
lea eax, [esp + 0x200]
push eax
call fcn.00402c50
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 0x22
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, ebx
jl 0x40fda6
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [esp + 0x1fc]
push edx
call esi
lea eax, [esp + 0x10c]
push eax
mov byte [esp + 0x258], 2
call esi
cmp word [esp + 0x1c], 1
jne 0x40fcc8
mov edx, 0x467455
mov eax, edx
lea esi, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40f920
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x20]
call fcn.00401720
test byte [esp + 0x14], 0x80
mov dword [esp + 0x254], 2
je 0x40f994
mov eax, dword [esp + 0x38]
and dword [esp + 0x14], 0xffffff7f
cmp eax, ebx
je 0x40f994
mov esi, eax
add eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
cmp eax, ebx
jne 0x40f990
cmp esi, ebx
je 0x40f990
mov eax, dword [esi]
cmp eax, ebx
je 0x40f977
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x40f987
push eax
call fcn.004199cf
add esp, 4
push esi
call fcn.004199cf
add esp, 4
mov dword [esp + 0x38], ebx
mov eax, dword [esp + 0x18]
push eax
push 0xb
push edi
mov ecx, ebp
call fcn.0042e2c9
mov ecx, 8
push str.rkbase
mov word [esp + 0x130], cx
call fcn.0045a850
mov dword [esp + 0x134], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 0x24
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0x12c]
push edx
lea eax, [esp + 0x220]
push eax
call fcn.00402c50
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 0x25
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, ebx
jl 0x40fda6
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [esp + 0x21c]
push edx
call esi
lea eax, [esp + 0x12c]
push eax
mov byte [esp + 0x258], 2
call esi
cmp word [esp + 0x1c], 1
jne 0x40fd12
mov edx, 0x467455
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40fa40
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x20]
call fcn.00401720
test dword [esp + 0x14], 0x100
mov dword [esp + 0x254], 2
je 0x40fab7
mov eax, dword [esp + 0x40]
and dword [esp + 0x14], 0xfffffeff
cmp eax, ebx
je 0x40fab7
mov esi, eax
add eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
cmp eax, ebx
jne 0x40fab3
cmp esi, ebx
je 0x40fab3
mov eax, dword [esi]
cmp eax, ebx
je 0x40fa9a
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x40faaa
push eax
call fcn.004199cf
add esp, 4
push esi
call fcn.004199cf
add esp, 4
mov dword [esp + 0x40], ebx
mov eax, dword [esp + 0x18]
push eax
push 0xc
push edi
mov ecx, ebp
call fcn.0042e2c9
mov ecx, 8
push str.rkmemo
mov word [esp + 0x150], cx
call fcn.0045a850
mov dword [esp + 0x154], eax
mov ecx, dword [0x77b630]
mov byte [esp + 0x254], 0x27
cmp ecx, ebx
je 0x40eadf
lea edx, [esp + 0x14c]
push edx
lea eax, [esp + 0x240]
push eax
call fcn.00402c50
push eax
lea ecx, [esp + 0x20]
push ecx
mov byte [esp + 0x25c], 0x28
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
cmp eax, ebx
jl 0x40fda6
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea edx, [esp + 0x23c]
push edx
call esi
lea eax, [esp + 0x14c]
push eax
mov byte [esp + 0x258], 2
call esi
cmp word [esp + 0x1c], 1
jne 0x40fd5c
mov edx, 0x467455
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x40fb63
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x20]
call fcn.00401720
test dword [esp + 0x14], 0x200
mov dword [esp + 0x254], 2
je 0x40fbda
mov eax, dword [esp + 0x48]
and dword [esp + 0x14], 0xfffffdff
cmp eax, ebx
je 0x40fbda
mov esi, eax
add eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
cmp eax, ebx
jne 0x40fbd6
cmp esi, ebx
je 0x40fbd6
mov eax, dword [esi]
cmp eax, ebx
je 0x40fbbd
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x40fbcd
push eax
call fcn.004199cf
add esp, 4
push esi
call fcn.004199cf
add esp, 4
mov dword [esp + 0x48], ebx
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x2c]
push edi
push 0xd
push eax
mov ecx, ebp
call fcn.0042e2c9
mov eax, dword [0x77b630]
cmp eax, ebx
je 0x40eadf
mov ecx, dword [eax]
mov edx, dword [ecx + 0x90]
push eax
mov esi, eax
call edx
cmp eax, ebx
jge 0x40fc17
push 0x460748
push esi
push eax
call fcn.0045a7d0
mov eax, dword [esp + 0x2c]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
inc eax
cmp eax, dword [esp + 0x30]
mov dword [esp + 0x2c], eax
jl 0x40eba0
lea eax, [edi - 0x10]
mov byte [esp + 0x254], 1
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x40fc54
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [esp + 0x1c]
push ecx
call esi
lea edx, [esp + 0x25c]
push edx
call esi
mov ecx, dword [esp + 0x24c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x244
ret 0x10
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x50]
call fcn.00403110
mov esi, dword [eax]
or dword [esp + 0x14], 0x40
mov byte [esp + 0x254], 0x20
cmp esi, ebx
je 0x40fcb7
cmp dword [esi + 4], ebx
jne 0x40fcb2
mov ecx, dword [esi]
push ecx
call fcn.0045a9d0
mov dword [esi + 4], eax
mov edx, dword [esi + 4]
jmp 0x40fcb9
xor edx, edx
cmp edx, ebx
jne 0x40f7f6
xor eax, eax
jmp 0x40f809
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x3c]
call fcn.00403110
mov esi, dword [eax]
or dword [esp + 0x14], 0x80
mov byte [esp + 0x254], 0x23
cmp esi, ebx
je 0x40fd01
cmp dword [esi + 4], ebx
jne 0x40fcfc
mov edx, dword [esi]
push edx
call fcn.0045a9d0
mov dword [esi + 4], eax
mov edx, dword [esi + 4]
jmp 0x40fd03
xor edx, edx
cmp edx, ebx
jne 0x40f918
xor eax, eax
jmp 0x40f929
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x44]
call fcn.00403110
mov esi, dword [eax]
or dword [esp + 0x14], 0x100
mov byte [esp + 0x254], 0x26
cmp esi, ebx
je 0x40fd4b
cmp dword [esi + 4], ebx
jne 0x40fd46
mov edx, dword [esi]
push edx
call fcn.0045a9d0
mov dword [esi + 4], eax
mov edx, dword [esi + 4]
jmp 0x40fd4d
xor edx, edx
cmp edx, ebx
jne 0x40fa3b
xor eax, eax
jmp 0x40fa49
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x4c]
call fcn.00403110
mov esi, dword [eax]
or dword [esp + 0x14], 0x200
mov byte [esp + 0x254], 0x29
cmp esi, ebx
je 0x40fd95
cmp dword [esi + 4], ebx
jne 0x40fd90
mov edx, dword [esi]
push edx
call fcn.0045a9d0
mov dword [esi + 4], eax
mov edx, dword [esi + 4]
jmp 0x40fd97
xor edx, edx
cmp edx, ebx
jne 0x40fb5e
xor eax, eax
jmp 0x40fb6c
push eax
call fcn.0045a7b0
int3