Function at 0x410240
Capabilities:
Parse pe header

Disassembly:
push ebp
lea ebp, [esp - 0x70]
sub esp, 0x70
push 0xffffffffffffffff
push 0x4a1fa4
mov eax, dword fs:[0]
push eax
sub esp, 0x2cc
push ebx
push esi
push edi
mov eax, dword [0x4cd4a4]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp + 0x50], ecx
mov esi, dword [ebp + 0x78]
xor edi, edi
cmp esi, edi
mov dword [ebp - 4], edi
jne 0x41028c
push 0x80004003
call fcn.0049fa80
mov eax, dword [esi]
mov edx, dword [eax + 0x2c]
lea ecx, [ebp + 0x38]
push ecx
push esi
call edx
cmp eax, edi
jge 0x4102a8
push 0x4b3ae8
push esi
push eax
call fcn.0049fa90
mov eax, dword [ebp + 0x38]
mov dword [ebp - 0x48], eax
mov dword [ebp + 0x68], edi
mov dword [ebp - 0x164], edi
mov dword [ebp + 0x54], edi
lea ecx, [ebp - 0x210]
mov byte [ebp - 4], 3
call fcn.00470b20
mov byte [ebp - 4], 4
mov dword [ebp + 0x3c], 1
mov ecx, dword [ebp - 0x48]
cmp dword [ebp + 0x3c], ecx
jg 0x4123a6
mov edi, dword [ebp + 0x50]
mov ecx, dword [edi + 0x140]
call fcn.00454d40
mov esi, dword [ebp + 0x78]
test esi, esi
jne 0x4102ff
push 0x80004003
call fcn.0049fa80
mov edx, dword [ebp + 0x3c]
push edx
lea eax, [ebp - 0x170]
push eax
mov ecx, esi
call fcn.0040fb00
mov eax, dword [eax]
mov ebx, dword [ebp + 0x68]
cmp ebx, eax
je 0x410339
test eax, eax
mov esi, ebx
mov ebx, eax
mov dword [ebp + 0x68], ebx
je 0x41032d
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
push eax
call edx
test esi, esi
je 0x410339
mov eax, dword [esi]
mov ecx, dword [eax + 8]
push esi
call ecx
mov eax, dword [ebp - 0x170]
test eax, eax
je 0x41034b
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
test ebx, ebx
jne 0x410359
push 0x80004003
call fcn.0049fa80
lea ecx, [ebp - 0xcc]
push ecx
mov ecx, ebx
call fcn.0040fb50
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 5
jne 0x41037c
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
push 3
lea edx, [ebp - 0x250]
push edx
call fcn.0040a8f0
mov ecx, eax
mov byte [ebp - 4], 6
call fcn.0040ad40
mov ebx, eax
lea eax, [ebp - 0x250]
sub ebx, 1
push eax
mov dword [ebp + 0x28], ebx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [ebp - 0xcc]
test eax, eax
mov byte [ebp - 4], 4
je 0x4103c2
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov esi, dword [ebp + 0x68]
test esi, esi
mov byte [ebp - 4], 7
jne 0x4103d7
push 0x80004003
call fcn.0049fa80
mov eax, dword [esi]
mov edx, dword [eax + 0x78]
lea ecx, [ebp - 0x158]
push ecx
push esi
call edx
test eax, eax
jge 0x4103f6
push 0x4b3d68
push esi
push eax
call fcn.0049fa90
fld dword [ebp - 0x158]
lea ecx, [ebp + 0x10]
fstp dword [ebp + 0x48]
mov eax, dword [esi]
mov edx, dword [eax + 0x40]
push ecx
push esi
call edx
test eax, eax
jge 0x41041b
push 0x4b3d68
push esi
push eax
call fcn.0049fa90
fld dword [ebp + 0x10]
push esi
fstp dword [ebp + 0x4c]
mov eax, dword [esi]
mov ecx, dword [eax + 0x9c]
mov dword [ebp - 4], 4
call ecx
test eax, eax
jge 0x410443
push 0x4b3d68
push esi
push eax
call fcn.0049fa90
mov ecx, edi
call fcn.00404420
cmp dword [edi + 0x114], 0
jne 0x41045d
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x114]
lea edx, [ebp - 0xe8]
push edx
call fcn.004034e0
mov eax, dword [eax]
mov esi, dword [edi + 0x118]
cmp esi, eax
je 0x410499
test eax, eax
mov dword [edi + 0x118], eax
je 0x41048d
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
push eax
call edx
test esi, esi
je 0x410499
mov eax, dword [esi]
mov ecx, dword [eax + 8]
push esi
call ecx
mov eax, dword [ebp - 0xe8]
test eax, eax
je 0x4104ab
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov esi, dword [ebp + 0x68]
mov ecx, dword [esi]
mov eax, dword [ecx + 0x58]
lea edx, [ebp + 8]
push edx
push esi
call eax
test eax, eax
jge 0x4104ca
push 0x4b3d68
push esi
push eax
call fcn.0049fa90
cmp byte [edi + 0x15d], 0
fild dword [ebp + 8]
fstp dword [ebp + 0x5c]
jne 0x4104eb
mov ecx, dword [edi + 0x120]
mov edx, dword [ecx + ebx*4]
fld dword [edx + 0xc]
fadd dword [ebp + 0x5c]
fstp dword [ebp + 0x5c]
cmp dword [edi + 0x118], 0
jne 0x4104fe
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
push 6
lea eax, [ebp - 0x280]
push eax
call fcn.004018a0
mov ecx, eax
mov byte [ebp - 4], 9
call fcn.004029a0
fstp dword [ebp + 0x58]
lea ecx, [ebp - 0x280]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
fldz
fstp dword [ebp - 0x1a0]
mov word [ebp - 0x1a8], 4
cmp dword [edi + 0x114], 0
mov byte [ebp - 4], 0xa
jne 0x410555
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x114]
lea edx, [ebp - 0x188]
push edx
call fcn.004034e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0xb
jne 0x41057c
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov eax, dword [esi]
mov edx, dword [eax + 0x13c]
lea ecx, [ebp - 0x1a8]
push ecx
push esi
call edx
test eax, eax
jge 0x4105a0
push 0x4b3b08
push esi
push eax
call fcn.0049fa90
mov eax, dword [ebp - 0x188]
test eax, eax
mov byte [ebp - 4], 0xa
je 0x4105b6
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea eax, [ebp - 0x1a8]
push eax
mov byte [ebp - 4], 4
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp dword [edi + 0x114], 0
jne 0x4105da
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x114]
lea edx, [ebp - 0x160]
push edx
call fcn.004034e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0xc
jne 0x410601
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
push 6
lea eax, [ebp - 0x270]
push eax
call fcn.004018a0
mov ebx, eax
cmp dword [edi + 0x114], 0
mov byte [ebp - 4], 0xd
jne 0x41062a
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x114]
lea edx, [ebp - 0x18]
push edx
call fcn.004034e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0xe
jne 0x41064e
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea eax, [ebp - 0xf0]
push eax
call fcn.0040b3e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0xf
jne 0x410671
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov ecx, dword [esi]
mov eax, dword [ecx + 0x84]
lea edx, [ebp]
push edx
push esi
call eax
test eax, eax
jge 0x410692
push 0x4b3c60
push esi
push eax
call fcn.0049fa90
fld dword [ebp]
mov ecx, ebx
fstp dword [ebp + 0x60]
call fcn.004029a0
fsub dword [ebp + 0x60]
mov eax, dword [ebp - 0xf0]
test eax, eax
mov byte [ebp - 4], 0xe
fstp dword [ebp + 0x64]
je 0x4106bb
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x18]
test eax, eax
mov byte [ebp - 4], 0xd
je 0x4106ce
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea eax, [ebp - 0x270]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov eax, dword [ebp - 0x160]
test eax, eax
mov byte [ebp - 4], 4
je 0x4106f1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov ecx, dword [ebp + 0x68]
lea eax, [ebp - 0x28]
push eax
call fcn.0040fb50
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x10
jne 0x410712
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea edx, [ebp - 0xf8]
push edx
call fcn.004036c0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x11
jne 0x410735
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov eax, dword [esi]
mov edx, dword [eax + 0x20]
lea ecx, [ebp - 0x20]
push ecx
push esi
call edx
test eax, eax
jge 0x410753
push 0x4b3b7c
push esi
push eax
call fcn.0049fa90
cmp dword [ebp - 0x20], 0
mov eax, dword [ebp - 0xf8]
setne bl
test eax, eax
mov byte [ebp - 4], 0x10
je 0x410770
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x28]
test eax, eax
mov byte [ebp - 4], 4
je 0x410783
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
test bl, bl
je 0x410a06
mov ecx, dword [ebp + 0x68]
lea eax, [ebp - 0x40]
push eax
call fcn.0040fb50
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x12
jne 0x4107ac
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea edx, [ebp - 0x168]
push edx
call fcn.004036c0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x13
jne 0x4107cf
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
push 1
lea eax, [ebp - 0x38]
push eax
call fcn.004039b0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x14
jne 0x4107f1
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea edx, [ebp - 0x100]
push edx
call fcn.00403a00
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x15
jne 0x410814
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea eax, [ebp - 0x30]
push eax
call fcn.004035d0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x16
jne 0x410834
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea edx, [ebp - 0x190]
push edx
call fcn.004038c0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x17
jne 0x410857
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov eax, dword [esi]
mov ecx, dword [eax + 0x17c]
push esi
call ecx
test eax, eax
jge 0x410874
push 0x4b3a68
push esi
push eax
call fcn.0049fa90
mov eax, dword [ebp - 0x190]
test eax, eax
mov byte [ebp - 4], 0x16
je 0x41088a
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov eax, dword [ebp - 0x30]
test eax, eax
mov byte [ebp - 4], 0x15
je 0x41089d
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x100]
test eax, eax
mov byte [ebp - 4], 0x14
je 0x4108b3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x38]
test eax, eax
mov byte [ebp - 4], 0x13
je 0x4108c6
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x168]
test eax, eax
mov byte [ebp - 4], 0x12
je 0x4108dc
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x40]
test eax, eax
mov byte [ebp - 4], 4
je 0x4108ef
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov ecx, edi
call fcn.00404420
cmp dword [edi + 0x114], 0
jne 0x410909
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x114]
lea eax, [ebp - 0x108]
push eax
call fcn.004034e0
mov eax, dword [eax]
mov esi, dword [edi + 0x118]
cmp esi, eax
je 0x410945
test eax, eax
mov dword [edi + 0x118], eax
je 0x410939
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
push eax
call edx
test esi, esi
je 0x410945
mov eax, dword [esi]
mov ecx, dword [eax + 8]
push esi
call ecx
mov eax, dword [ebp - 0x108]
test eax, eax
je 0x410957
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
cmp dword [edi + 0x118], 0
jne 0x41096a
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
push 5
lea edx, [ebp - 0x220]
push edx
call fcn.004018a0
mov ecx, eax
mov byte [ebp - 4], 0x18
call fcn.004029a0
push ecx
mov ecx, edi
fstp dword [esp]
call fcn.0046e220
fstp dword [ebp + 0x60]
mov ebx, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x220]
push eax
mov byte [ebp - 4], 4
call ebx
cmp dword [edi + 0x118], 0
jne 0x4109bd
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
push 6
lea edx, [ebp - 0x290]
push edx
call fcn.004018a0
mov ecx, eax
mov byte [ebp - 4], 0x19
call fcn.004029a0
fstp dword [ebp + 0x6c]
lea eax, [ebp - 0x290]
push eax
mov byte [ebp - 4], 4
call ebx
fld dword [0x4b3cc4]
fcom dword [ebp + 0x60]
fnstsw ax
test ah, 0x44
jp 0x410a29
fcomp dword [ebp + 0x6c]
fnstsw ax
test ah, 0x44
jp 0x410a2b
mov ebx, dword [ebp + 0x50]
mov edi, dword [ebp + 0x7c]
cmp dword [edi + 0x18], 0
je 0x411fa0
fld dword [ebp + 0x5c]
fisub dword [edi]
fstp dword [ebp + 0x30]
fld dword [ebp + 0x58]
fisub dword [edi + 4]
jmp 0x411fa9
fstp st(0)
fld1
mov word [ebp - 0x1c8], 4
fstp dword [ebp - 0x1c0]
cmp dword [edi + 0x114], 0
mov byte [ebp - 4], 0x1a
jne 0x410a53
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x114]
lea edx, [ebp - 0x198]
push edx
call fcn.004034e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x1b
jne 0x410a7a
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov eax, dword [esi]
mov edx, dword [eax + 0x13c]
lea ecx, [ebp - 0x1c8]
push ecx
push esi
call edx
test eax, eax
jge 0x410a9e
push 0x4b3b08
push esi
push eax
call fcn.0049fa90
mov eax, dword [ebp - 0x198]
test eax, eax
mov byte [ebp - 4], 0x1a
je 0x410ab4
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea eax, [ebp - 0x1c8]
push eax
mov byte [ebp - 4], 4
call ebx
cmp dword [edi + 0x114], 0
jne 0x410ad4
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x114]
lea edx, [ebp - 0x110]
push edx
call fcn.004034e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x1c
jne 0x410afb
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea eax, [ebp - 0x50]
push eax
call fcn.0040b3e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x1d
jne 0x410b1b
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov ecx, dword [esi]
mov eax, dword [ecx + 0x34]
lea edx, [ebp - 0x114]
push edx
push esi
call eax
test eax, eax
jge 0x410b3c
push 0x4b3c60
push esi
push eax
call fcn.0049fa90
mov eax, dword [ebp - 0x50]
test eax, eax
mov byte [ebp - 4], 0x1c
je 0x410b4f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x110]
test eax, eax
mov byte [ebp - 4], 4
je 0x410b65
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
cmp dword [edi + 0x114], 0
jne 0x410b78
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x114]
lea eax, [ebp - 0x184]
push eax
call fcn.004034e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x1e
jne 0x410b9f
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea edx, [ebp - 0x58]
push edx
call fcn.0040b3e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x1f
jne 0x410bbf
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov eax, dword [esi]
mov ecx, dword [eax + 0x38]
push 0
push esi
call ecx
test eax, eax
jge 0x410bdb
push 0x4b3c60
push esi
push eax
call fcn.0049fa90
mov eax, dword [ebp - 0x58]
test eax, eax
mov byte [ebp - 4], 0x1e
je 0x410bee
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov eax, dword [ebp - 0x184]
test eax, eax
mov byte [ebp - 4], 4
je 0x410c04
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
cmp dword [edi + 0x114], 0
jne 0x410c17
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x114]
lea eax, [ebp - 0x60]
push eax
call fcn.004034e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x20
jne 0x410c3b
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov ecx, dword [esi]
mov eax, dword [ecx + 0x114]
lea edx, [ebp - 0xd4]
push edx
push esi
call eax
test eax, eax
jge 0x410c5f
push 0x4b3b08
push esi
push eax
call fcn.0049fa90
mov eax, dword [ebp - 0x60]
test eax, eax
mov byte [ebp - 4], 4
je 0x410c72
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
cmp dword [edi + 0x114], 0
jne 0x410c85
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x114]
lea eax, [ebp - 0x118]
push eax
call fcn.004034e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x21
jne 0x410cac
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov ecx, dword [esi]
mov edx, dword [ecx + 0x118]
push 0
push esi
call edx
test eax, eax
jge 0x410ccb
push 0x4b3b08
push esi
push eax
call fcn.0049fa90
mov eax, dword [ebp - 0x118]
test eax, eax
mov byte [ebp - 4], 4
je 0x410ce1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
cmp dword [edi + 0x114], 0
jne 0x410cf4
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x114]
lea eax, [ebp - 0x68]
push eax
call fcn.004034e0
mov eax, dword [eax]
mov esi, dword [edi + 0x118]
cmp esi, eax
je 0x410d2d
test eax, eax
mov dword [edi + 0x118], eax
je 0x410d21
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
push eax
call edx
test esi, esi
je 0x410d2d
mov eax, dword [esi]
mov ecx, dword [eax + 8]
push esi
call ecx
mov eax, dword [ebp - 0x68]
test eax, eax
je 0x410d3c
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
cmp dword [edi + 0x118], 0
jne 0x410d4f
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
push 5
lea edx, [ebp - 0x230]
push edx
call fcn.004018a0
mov dword [ebp + 0x6c], eax
cmp dword [edi + 0x118], 0
mov byte [ebp - 4], 0x22
jne 0x410d7d
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
lea eax, [ebp - 0x194]
push eax
call fcn.0040b3e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x23
jne 0x410da4
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea edx, [ebp - 0x78]
push edx
call fcn.0040fab0
mov esi, eax
cmp dword [edi + 0x118], 0
mov byte [ebp - 4], 0x24
jne 0x410dc8
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
lea eax, [ebp - 0x120]
push eax
call fcn.0040b3e0
mov ebx, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x25
jne 0x410def
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov ecx, dword [esi]
mov eax, dword [ecx + 0x78]
lea edx, [ebp - 0x174]
push edx
push esi
call eax
test eax, eax
jge 0x410e10
push 0x4b3d58
push esi
push eax
call fcn.0049fa90
cmp dword [ebx], 0
mov ecx, dword [ebp - 0x174]
mov dword [ebp + 0x60], ecx
jne 0x410e28
push 0x80004003
call fcn.0049fa80
mov esi, dword [ebx]
mov edx, dword [esi]
mov ecx, dword [edx + 0x64]
lea eax, [ebp - 0x70]
push eax
push esi
call ecx
test eax, eax
jge 0x410e46
push 0x4b3c60
push esi
push eax
call fcn.0049fa90
fld dword [ebp - 0x70]
mov ecx, dword [ebp + 0x6c]
fstp dword [ebp + 0x58]
call fcn.004029a0
push ecx
mov ecx, edi
fstp dword [esp]
call fcn.0046e220
fisub dword [ebp + 0x60]
mov eax, dword [ebp - 0x120]
test eax, eax
mov byte [ebp - 4], 0x24
fsub dword [ebp + 0x58]
fstp dword [ebp + 0x5c]
je 0x410e7e
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov eax, dword [ebp - 0x78]
test eax, eax
mov byte [ebp - 4], 0x23
je 0x410e91
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x194]
test eax, eax
mov byte [ebp - 4], 0x22
je 0x410ea7
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea eax, [ebp - 0x230]
push eax
mov byte [ebp - 4], 4
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp dword [edi + 0x118], 0
jne 0x410ecb
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
lea edx, [ebp - 0x128]
push edx
call fcn.0040b3e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x26
jne 0x410ef2
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov eax, dword [esi]
mov edx, dword [eax + 0x6c]
lea ecx, [ebp - 0x80]
push ecx
push esi
call edx
test eax, eax
jge 0x410f10
push 0x4b3c60
push esi
push eax
call fcn.0049fa90
fld dword [ebp + 0x5c]
mov eax, dword [ebp - 0x128]
test eax, eax
fsub dword [ebp - 0x80]
mov byte [ebp - 4], 4
fstp dword [ebp + 0x5c]
je 0x410f2f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
cmp dword [edi + 0x118], 0
jne 0x410f42
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
lea eax, [ebp - 0x98]
push eax
call fcn.0040b340
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x27
jne 0x410f69
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
push 1
lea edx, [ebp - 0x130]
push edx
call fcn.004039b0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x28
jne 0x410f8e
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea eax, [ebp - 0x90]
push eax
call fcn.00403a00
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x29
jne 0x410fb1
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea edx, [ebp - 0x17c]
push edx
call fcn.0040f920
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x2a
jne 0x410fd4
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov eax, dword [esi]
mov edx, dword [eax + 0x20]
lea ecx, [ebp - 0x88]
push ecx
push esi
call edx
test eax, eax
jge 0x410ff5
push 0x4b3d88
push esi
push eax
call fcn.0049fa90
cmp dword [ebp - 0x88], 0
mov eax, dword [ebp - 0x17c]
setne bl
test eax, eax
mov byte [ebp - 4], 0x29
je 0x411015
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x90]
test eax, eax
mov byte [ebp - 4], 0x28
je 0x41102b
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x130]
test eax, eax
mov byte [ebp - 4], 0x27
je 0x411041
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x98]
test eax, eax
mov byte [ebp - 4], 4
je 0x411057
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
test bl, bl
je 0x41124b
cmp dword [edi + 0x118], 0
jne 0x411072
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
lea eax, [ebp - 0x140]
push eax
call fcn.0040b340
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x2b
jne 0x411099
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
push 1
lea edx, [ebp - 0xb0]
push edx
call fcn.004039b0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x2c
jne 0x4110be
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea eax, [ebp - 0x16c]
push eax
call fcn.00403a00
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x2d
jne 0x4110e1
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea edx, [ebp - 0xa8]
push edx
call fcn.0040f8d0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x2e
jne 0x411104
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea eax, [ebp - 0x138]
push eax
call fcn.0040f9c0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x2f
jne 0x411127
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea edx, [ebp - 0xa0]
push edx
call fcn.0040fbf0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x30
jne 0x41114a
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
push 1
lea eax, [ebp - 0x18c]
push eax
call fcn.0040fba0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x31
jne 0x41116f
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov ecx, dword [esi]
mov eax, dword [ecx + 0x50]
lea edx, [ebp - 0xb8]
push edx
push esi
call eax
test eax, eax
jge 0x411190
push 0x4b3d78
push esi
push eax
call fcn.0049fa90
mov eax, dword [ebp - 0x18c]
test eax, eax
mov byte [ebp - 4], 0x30
je 0x4111a6
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0xa0]
test eax, eax
mov byte [ebp - 4], 0x2f
je 0x4111bc
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x138]
test eax, eax
mov byte [ebp - 4], 0x2e
je 0x4111d2
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0xa8]
test eax, eax
mov byte [ebp - 4], 0x2d
je 0x4111e8
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x16c]
test eax, eax
mov byte [ebp - 4], 0x2c
je 0x4111fe
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0xb0]
test eax, eax
mov byte [ebp - 4], 0x2b
je 0x411214
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x140]
test eax, eax
mov byte [ebp - 4], 4
je 0x41122a
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
fld dword [0x4b3cc0]
fld dword [ebp - 0xb8]
fucom st(1)
fnstsw ax
fstp st(1)
test ah, 0x44
jnp 0x411249
fsubr dword [ebp + 0x5c]
fstp dword [ebp + 0x5c]
jmp 0x41124b
fstp st(0)
cmp dword [edi + 0x118], 0
jne 0x41125e
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
push 6
lea eax, [ebp - 0x240]
push eax
call fcn.004018a0
mov dword [ebp + 0x6c], eax
cmp dword [edi + 0x118], 0
mov byte [ebp - 4], 0x32
jne 0x41128c
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
lea edx, [ebp - 0x178]
push edx
call fcn.0040b3e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x33
jne 0x4112b3
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea eax, [ebp - 0xc8]
push eax
call fcn.0040fab0
mov esi, eax
cmp dword [edi + 0x118], 0
mov byte [ebp - 4], 0x34
jne 0x4112da
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
lea edx, [ebp - 0x148]
push edx
call fcn.0040b3e0
mov ebx, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x35
jne 0x411301
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov eax, dword [esi]
mov edx, dword [eax + 0x38]
lea ecx, [ebp + 0x1c]
push ecx
push esi
call edx
test eax, eax
jge 0x41131f
push 0x4b3d58
push esi
push eax
call fcn.0049fa90
cmp dword [ebx], 0
mov eax, dword [ebp + 0x1c]
mov dword [ebp + 0x60], eax
jne 0x411334
push 0x80004003
call fcn.0049fa80
mov esi, dword [ebx]
mov ecx, dword [esi]
mov eax, dword [ecx + 0x84]
lea edx, [ebp - 0xc0]
push edx
push esi
call eax
test eax, eax
jge 0x411358
push 0x4b3c60
push esi
push eax
call fcn.0049fa90
fld dword [ebp - 0xc0]
mov ecx, dword [ebp + 0x6c]
fstp dword [ebp + 0x58]
call fcn.004029a0
fisub dword [ebp + 0x60]
mov eax, dword [ebp - 0x148]
test eax, eax
mov byte [ebp - 4], 0x34
fsub dword [ebp + 0x58]
fstp dword [ebp + 0x58]
je 0x411388
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0xc8]
test eax, eax
mov byte [ebp - 4], 0x33
je 0x41139e
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x178]
test eax, eax
mov byte [ebp - 4], 0x32
je 0x4113b4
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov ebx, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x240]
push eax
mov byte [ebp - 4], 4
call ebx
fld dword [0x4b3cc4]
fcom dword [ebp + 0x48]
fnstsw ax
test ah, 0x44
jnp 0x4113e7
fcomp dword [ebp + 0x4c]
fnstsw ax
test ah, 0x44
jp 0x411c50
jmp 0x4113e9
fstp st(0)
mov dword [edi + 0x22dc], 1
cmp dword [edi + 0x118], 0
jne 0x411406
push 0x80004003
call fcn.0049fa80
mov ecx, dword [edi + 0x118]
lea edx, [ebp + 0x14]
push edx
call fcn.0040b340
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x36
jne 0x41142a
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
push 1
lea eax, [ebp + 0x18]
push eax
call fcn.004039b0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x37
jne 0x41144c
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea edx, [ebp - 0xe0]
push edx
call fcn.00403a00
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x38
jne 0x41146f
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea eax, [ebp - 0x180]
push eax
call fcn.0040f880
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x39
jne 0x411492
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov ecx, dword [esi]
mov eax, dword [ecx + 0x20]
lea edx, [ebp - 0xd0]
push edx
push esi
call eax
test eax, eax
jge 0x4114b3
push 0x4b3d48
push esi
push eax
call fcn.0049fa90
cmp dword [ebp - 0xd0], 0
setne cl
cmp dword [edi + 0x118], 0
push ecx
jne 0x4114d1
mov edi, dword [ebp - 0xd4]
test edi, edi
je 0x411c6c
fld dword [ebp + 0x48]
fstp dword [ebp + 0x64]
fld dword [ebp + 0x4c]
fstp dword [ebp + 0x48]
fld dword [ebp + 0x64]
fstp dword [ebp + 0x4c]
mov ecx, dword [ebp + 0x68]
lea eax, [ebp - 0x104]
push eax
call fcn.0040fb50
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x4e
jne 0x411c90
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea edx, [ebp - 0xfc]
push edx
call fcn.004036c0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x4f
jne 0x411cb3
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
push 1
lea eax, [ebp - 0xf4]
push eax
call fcn.004039b0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x50
jne 0x411cd8
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea edx, [ebp - 0xec]
push edx
call fcn.00403a00
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x51
jne 0x411cfb
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
lea eax, [ebp - 0xe4]
push eax
call fcn.004035d0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x52
jne 0x411d1e
fld dword [ebp + 0x5c]
fstp dword [ebp + 0x30]
fld dword [ebp + 0x58]
lea eax, [ebp + 0x4c]
fstp dword [ebp + 0x34]
push eax
lea ecx, [ebp + 0x48]
push ecx
lea edx, [ebp + 0x34]
push edx
lea eax, [ebp + 0x30]
push eax
push ecx
mov ecx, dword [ebp + 0x68]
mov eax, esp
mov byte [ebx + 0x231c], 0
mov dword [eax], ecx
mov edx, dword [ecx]
mov eax, dword [edx + 4]
mov dword [ebp + 0x64], esp
push ecx
call eax
lea ecx, [ebp + 0x24]
push ecx
mov ecx, ebx
call fcn.0041b060
mov esi, eax
mov eax, dword [esi]
test eax, eax
mov byte [ebp - 4], 0x59
je 0x411ff1
add dword [eax + 4], 1
mov eax, dword [ebp + 0x54]
test eax, eax
mov ecx, eax
je 0x41200e
add dword [eax + 4], 0xffffffff
add eax, 4
cmp dword [eax], 0
jne 0x41200e
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov ecx, dword [esi]
mov eax, dword [ebp + 0x24]
test eax, eax
mov dword [ebp + 0x54], ecx
mov byte [ebp - 4], 4
mov ecx, eax
je 0x412034
add dword [eax + 4], 0xffffffff
add eax, 4
cmp dword [eax], 0
jne 0x412034
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
push edi
push 3
push ecx
mov ecx, dword [ebp + 0x54]
mov eax, esp
mov dword [eax], ecx
mov eax, dword [ebp + 0x54]
test eax, eax
mov dword [ebp + 0x24], 0
mov dword [ebp + 0x64], esp
je 0x412054
add dword [eax + 4], 1
fld dword [ebp + 0x4c]
call fcn.0049eca0
fld dword [ebp + 0x48]
push eax
call fcn.0049eca0
fld dword [ebp + 0x34]
push eax
call fcn.0049eca0
fld dword [ebp + 0x30]
push eax
call fcn.0049eca0
push eax
lea ecx, [ebp - 0x2d8]
call fcn.00470a50
push eax
lea ecx, [ebp - 0x210]
mov byte [ebp - 4], 0x5a
call fcn.0040fd80
lea ecx, [ebp - 0x2d8]
mov byte [ebp - 4], 4
call fcn.00470b40
cmp dword [ebx + 0x114], 0
jne 0x4120b5
push 0x80004003
call fcn.0049fa80
mov ecx, dword [ebx + 0x114]
lea edx, [ebp - 0x13c]
push edx
call fcn.004034e0
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x5b
jne 0x4120dc
push 0x80004003
call fcn.0049fa80
mov esi, dword [esi]
mov eax, dword [esi]
mov edx, dword [eax + 0x114]
lea ecx, [ebp - 0x134]
push ecx
push esi
call edx
test eax, eax
jge 0x412100
push 0x4b3b08
push esi
push eax
call fcn.0049fa90
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x1f4], eax
mov eax, dword [ebp - 0x13c]
test eax, eax
mov byte [ebp - 4], 4
je 0x412122
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov esi, dword [ebp - 0x1e0]
mov edi, dword [ebp + 0x68]
cmp esi, edi
je 0x412149
mov dword [ebp - 0x1e0], edi
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
test esi, esi
je 0x412149
mov edx, dword [esi]
mov eax, dword [edx + 8]
push esi
call eax
lea ecx, [ebp - 0x210]
push ecx
lea edx, [ebp - 0x144]
push edx
mov ecx, edi
call fcn.0040fb50
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x5c
jne 0x412173
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
push ecx
mov eax, esp
mov dword [ebp + 0x64], esp
push eax
call fcn.0040f880
mov ecx, ebx
call fcn.0045c290
mov eax, dword [ebp - 0x144]
test eax, eax
mov byte [ebp - 4], 4
je 0x41219e
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea eax, [ebp - 0x210]
push eax
lea ecx, [ebp - 0x14c]
push ecx
mov ecx, edi
mov byte [ebx + 0x2328], 1
mov byte [ebp - 4], 0x5d
call fcn.0040fb50
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x5e
jne 0x4121d3
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
push ecx
mov edx, esp
mov dword [ebp + 0x64], esp
push edx
call fcn.0040f970
mov ecx, ebx
call fcn.00456020
mov eax, dword [ebp - 0x14c]
test eax, eax
mov byte [ebp - 4], 0x5d
je 0x4121fe
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [ebp - 4], 4
mov ebx, dword [ebp + 0x68]
mov edi, dword [ebp + 0x50]
lea eax, [ebp - 0x210]
push eax
lea ecx, [ebp - 0x154]
push ecx
mov ecx, ebx
mov byte [edi + 0x2328], 0
call fcn.0040fb50
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x60
jne 0x41223c
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
push ecx
mov edx, esp
mov dword [ebp + 0x64], esp
push edx
call fcn.004036c0
mov ecx, edi
call fcn.00452240
mov eax, dword [ebp - 0x154]
test eax, eax
mov byte [ebp - 4], 4
je 0x412267
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea eax, [ebp - 0x210]
push eax
lea ecx, [ebp - 0x15c]
push ecx
mov ecx, ebx
mov byte [edi + 0x22cb], 0
mov byte [ebp - 4], 0x61
call fcn.0040fb50
mov esi, eax
cmp dword [esi], 0
mov byte [ebp - 4], 0x62
jne 0x41229c
push 0x80004003
call fcn.0049fa80
mov ecx, dword [esi]
push ecx
mov edx, esp
mov dword [ebp + 0x64], esp
push edx
call fcn.0040f970
mov ecx, edi
call fcn.00456020
mov eax, dword [ebp - 0x15c]
test eax, eax
mov byte [ebp - 4], 0x61
je 0x4122c7
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [ebp - 4], 4
mov eax, dword [ebp + 0x7c]
xor esi, esi
cmp dword [eax + 0x18], esi
jne 0x412345
mov ecx, dword [ebp + 0x50]
mov edx, dword [ecx + 0x130]
lea eax, [ebp + 0x2c]
push eax
mov eax, dword [ebp + 0x28]
lea ecx, [edx + eax*4]
call sub.xfa.dll_public:_class_XFANodeList___thiscall_XFANode::getNodes_void_
lea ecx, [ebp + 0x54]
push ecx
mov ecx, eax
mov byte [ebp - 4], 0x64
call sub.xfa.dll_public:_void___thiscall_XFANodeList::append_class_XFANode_const__
mov eax, dword [ebp + 0x2c]
cmp eax, esi
mov byte [ebp - 4], 4
mov ecx, eax
je 0x41231f
add dword [eax + 4], 0xffffffff
add eax, 4
cmp dword [eax], esi
jne 0x41231f
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
add dword [ebp + 0x3c], 1
mov dword [ebp + 0x2c], esi
jmp 0x4102d4
lea ecx, [ebp + 0x38]
push ecx
lea ecx, [eax + 0x10]
call sub.xfa.dll_public:_class_XFANodeList___thiscall_XFANode::getNodes_void_
lea edx, [ebp + 0x54]
push edx
mov ecx, eax
mov byte [ebp - 4], 0x65
call sub.xfa.dll_public:_void___thiscall_XFANodeList::append_class_XFANode_const__
mov eax, dword [ebp + 0x38]
cmp eax, esi
mov byte [ebp - 4], 4
mov ecx, eax
je 0x412380
add dword [eax + 4], 0xffffffff
add eax, 4
cmp dword [eax], esi
jne 0x412380
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
add dword [ebp + 0x3c], 1
mov dword [ebp + 0x38], esi
jmp 0x4102d4
lea ecx, [ebp - 0x210]
mov byte [ebp - 4], 3
call fcn.00470b40
mov eax, dword [ebp + 0x54]
test eax, eax
mov byte [ebp - 4], 2
mov ecx, eax
je 0x4123d6
add dword [eax + 4], 0xffffffff
add eax, 4
cmp dword [eax], 0
jne 0x4123d6
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov ecx, dword [ebp - 0x164]
test ecx, ecx
mov dword [ebp + 0x54], 0
mov byte [ebp - 4], 1
je 0x4123f9
add dword [ecx + 4], 0xffffffff
jne 0x4123f9
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov eax, dword [ebp + 0x68]
test eax, eax
mov byte [ebp - 4], 0
je 0x41240c
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp + 0x78]
test eax, eax
mov dword [ebp - 4], 0xffffffff
je 0x412422
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add ebp, 0x70
mov esp, ebp
pop ebp
ret 8