Function at 0x505f00
Capabilities:
Check http status code
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push 0x405556
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xdc
push ebx
push esi
push edi
mov dword [ebp - 8], esp
mov dword [ebp - 4], 0x404758
mov ax, word [0x54f71a]
xor ebx, ebx
cmp word [0x54f718], ax
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x58], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 0x70], ebx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x80], ebx
mov dword [ebp - 0x84], ebx
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x90], ebx
mov dword [ebp - 0x94], ebx
jne 0x50a3ad
cmp ax, 0x7fbc
jne 0x505fbd
push ebx
call fcn.004308e0
push 0x50a479
jmp 0x50a3df
cmp ax, 0x7fbd
jne 0x505fd9
push ebx
call fcn.0052f370
push ebx
call fcn.004308e0
push 0x50a479
jmp 0x50a3df
mov edi, dword [ebp + 8]
cmp di, 2
jne 0x505fe7
mov edi, 0xa
mov cx, word [0x550282]
cmp cx, 0x62
je 0x50a271
cmp cx, 0x63
je 0x50a271
cmp cx, 0xffff
je 0x50a04e
cmp cx, 0x5b
je 0x50a04e
cmp cx, bx
jne 0x5060f2
movsx ecx, ax
mov edx, ecx
sub edx, ebx
je 0x5060b7
sub edx, 0x3e6
je 0x506093
dec edx
je 0x506076
mov word [0x550284], ax
mov eax, dword [0x54f708]
mov edx, dword [eax + 0x14]
mov eax, dword [eax + 0xc]
sub ecx, edx
mov edx, ecx
shl edx, 6
add edx, ecx
cmp word [eax + edx*4 + 2], bx
jge 0x509d91
push 0xffffffffffffffff
call fcn.005050d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
push 0x3e7
call fcn.005050d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
mov cx, word [0x550286]
mov word [0x54f718], 0xfffe
not cx
mov word [0x550286], cx
push 0x50a479
jmp 0x50a3df
push 3
call fcn.005050d0
xor edx, edx
mov ecx, 0x550290
mov word [0x550298], bx
mov word [0x550288], bx
call dword [sym.imp.MSVBVM60.DLL___vbaStrCopy]
mov dword [0x54eb3c], ebx
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp cx, 1
je 0x509c83
cmp cx, 2
je 0x509c83
cmp cx, 3
je 0x509b00
cmp cx, 4
je 0x509b00
cmp cx, 0x3e7
je 0x509b00
cmp cx, 5
jl 0x50a3a4
cmp cx, 0xc
jg 0x50a3a4
cmp ax, bx
jne 0x50615e
push 1
call fcn.005050d0
mov dword [0x54eb3c], ebx
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 1
jne 0x506270
movsx ecx, word [0x550284]
mov eax, dword [0x54f708]
mov edx, ecx
sub edx, dword [eax + 0x14]
mov esi, edx
shl esi, 6
add esi, edx
mov edx, dword [eax + 0xc]
mov edi, dword [edx + esi*4 + 0x100]
movsx edx, word [0x550288]
mov ebx, dword [edi + 0x14]
mov esi, edx
sub esi, ebx
lea ebx, [esi*8]
sub ebx, esi
mov esi, dword [edi + 0xc]
shl ebx, 4
lea esi, [ebx + esi + 0x20]
mov bl, byte [esi]
inc bl
mov byte [esi], bl
mov edi, dword [eax + 0x14]
mov esi, ecx
sub esi, edi
mov edi, esi
shl edi, 6
add edi, esi
mov esi, dword [eax + 0xc]
mov edi, dword [esi + edi*4 + 0x100]
mov esi, edx
sub esi, dword [edi + 0x14]
lea ebx, [esi*8]
sub ebx, esi
mov esi, dword [edi + 0xc]
shl ebx, 4
lea esi, [ebx + esi + 0x20]
cmp byte [esi], 3
jne 0x5061e9
mov byte [esi], 7
mov edi, dword [eax + 0x14]
mov esi, ecx
sub esi, edi
mov edi, esi
shl edi, 6
add edi, esi
mov esi, dword [eax + 0xc]
mov edi, dword [esi + edi*4 + 0x100]
mov esi, edx
sub esi, dword [edi + 0x14]
lea ebx, [esi*8]
sub ebx, esi
mov esi, dword [edi + 0xc]
shl ebx, 4
lea esi, [ebx + esi + 0x20]
cmp byte [esi], 8
jne 0x506221
mov byte [esi], 9
mov ebx, dword [eax + 0x14]
mov eax, dword [eax + 0xc]
sub ecx, ebx
mov esi, ecx
shl esi, 6
add esi, ecx
mov eax, dword [eax + esi*4 + 0x100]
sub edx, dword [eax + 0x14]
lea ecx, [edx*8]
sub ecx, edx
mov edx, dword [eax + 0xc]
shl ecx, 4
lea eax, [ecx + edx + 0x20]
mov cl, byte [ecx + edx + 0x20]
cmp cl, 0xb
jne 0x50a3a4
mov byte [eax], 0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 2
jne 0x50628e
call fcn.00503800
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 3
jne 0x5062ac
call fcn.00504f90
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 4
jne 0x5062cc
push 2
call fcn.00504190
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 5
jne 0x506343
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x18]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
movsx eax, word [0x550288]
mov edx, dword [ecx + 0x14]
push 8
sub eax, edx
push ebx
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov dword [ebp - 0x38], 0x4011
lea ecx, [edx + eax + 0x25]
movsx edx, di
mov dword [ebp - 0x30], ecx
push edx
jmp 0x50a370
cmp ax, 6
jne 0x5063ba
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x18]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
movsx eax, word [0x550288]
mov edx, dword [ecx + 0x14]
push 0x10
sub eax, edx
push ebx
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov dword [ebp - 0x38], 0x4011
lea ecx, [edx + eax + 0x5e]
movsx edx, di
mov dword [ebp - 0x30], ecx
push edx
jmp 0x50a370
cmp ax, 7
jne 0x50645c
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x18]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
movsx eax, word [0x550288]
mov edx, dword [ecx + 0x14]
push 3
sub eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov dword [ebp - 0x38], 0x4011
lea ecx, [edx + eax + 0x5f]
mov dword [ebp - 0x30], ecx
push ebx
lea edx, [ebp - 0x38]
push 1
push edx
call fcn.00435f40
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea eax, [ebp - 0x14]
push eax
call esi
lea ecx, [ebp - 0x18]
push ecx
call esi
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 8
jne 0x50647c
push 1
call fcn.00504190
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 9
jne 0x50649a
call fcn.00502ea0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xa
jl 0x5064c3
cmp ax, 0x12
jg 0x5064c3
sub ax, 0xa
mov word [0x54f718], 0xfffe
mov word [0x55028e], ax
push 0x50a479
jmp 0x50a3df
cmp ax, 0x13
jne 0x5064e2
push ebx
call fcn.00504190
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x14
jne 0x50655a
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x18]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
movsx eax, word [0x550288]
mov edx, dword [ecx + 0x14]
push 0xf
sub eax, edx
push ebx
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov dword [ebp - 0x38], 0x4011
lea ecx, [edx + eax + 0x60]
movsx edx, di
mov dword [ebp - 0x30], ecx
push edx
jmp 0x50a370
cmp ax, 0x15
jne 0x50657a
push 4
call fcn.00504190
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x16
jne 0x50661c
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x18]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
movsx eax, word [0x550288]
mov edx, dword [ecx + 0x14]
push 3
sub eax, edx
push ebx
push 1
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov dword [ebp - 0x38], 0x4011
lea ecx, [edx + eax + 0x21]
lea edx, [ebp - 0x38]
push edx
mov dword [ebp - 0x30], ecx
call fcn.00435f40
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea eax, [ebp - 0x14]
push eax
call esi
lea ecx, [ebp - 0x18]
push ecx
call esi
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x17
jne 0x50668f
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x18]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
movsx eax, word [0x550288]
mov edx, dword [ecx + 0x14]
push 1
sub eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov dword [ebp - 0x38], 0x4011
lea ecx, [edx + eax + 0x2b]
mov dword [ebp - 0x30], ecx
jmp 0x50642b
cmp ax, 0x18
jne 0x5066ae
push ebx
call fcn.00504290
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x19
jne 0x5066ce
push 1
call fcn.00504290
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x1a
jne 0x5066ed
push ebx
call fcn.005039d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
mov ebx, 0x1b
cmp ax, bx
jne 0x506714
push 0x2af8
call fcn.005039d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x1c
jne 0x506737
push 0xffffd508
call fcn.005039d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x1d
jne 0x50675a
push 0x5209
call fcn.005039d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x1e
jne 0x5067bd
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x18]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
lea ecx, [edx + eax + 0x26]
jmp 0x507018
cmp ax, 0x1f
jne 0x5067e2
mov edx, dword [0x5502cc]
push edx
call fcn.00504650
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x20
jne 0x5067f7
mov eax, dword [0x54f708]
lea ecx, [ebp - 0x1c]
push eax
push ecx
jmp 0x508964
cmp ax, 0x21
jne 0x50688d
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x1c]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x5502cc]
push 0xffffffffffffffff
push 0xf
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4011
lea ecx, [eax + edx*4 + 0xe]
mov dword [ebp - 0x30], ecx
jmp 0x507e3f
cmp ax, 0x22
jne 0x5069e1
mov ecx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea edx, [ebp - 0x20]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x20]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x1c]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x18]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov eax, dword [ebp - 0x14]
push 0xffffffffffffffff
push 3
push 0
mov ecx, dword [eax + 0x14]
mov edx, dword [eax + 0xc]
shl ecx, 3
sub edx, ecx
lea eax, [ebp - 0x38]
add edx, 8
push 1
push eax
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x38], 0x4011
call fcn.00435f40
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea ecx, [ebp - 0x14]
push ecx
call esi
lea edx, [ebp - 0x18]
push edx
call esi
lea eax, [ebp - 0x1c]
push eax
call esi
lea ecx, [ebp - 0x20]
push ecx
call esi
movsx eax, word [0x550284]
mov esi, dword [0x54f708]
mov ecx, eax
sub ecx, dword [esi + 0x14]
mov edx, ecx
shl edx, 6
add edx, ecx
mov ecx, dword [esi + 0xc]
mov edi, dword [ecx + edx*4 + 0x100]
movsx ecx, word [0x550288]
mov ebx, dword [edi + 0x14]
mov edx, ecx
sub edx, ebx
lea ebx, [edx*8]
sub ebx, edx
mov edx, dword [edi + 0xc]
mov edi, dword [0x5502cc]
shl ebx, 4
mov ebx, dword [ebx + edx + 0x10]
mov edx, edi
mov dword [ebp - 0xdc], ebx
sub edx, dword [ebx + 0x14]
lea ebx, [edx*8]
sub ebx, edx
mov edx, dword [ebp - 0xdc]
mov edx, dword [edx + 0xc]
mov edx, dword [edx + ebx*4 + 0x18]
mov ebx, dword [edx + 0x14]
mov edx, dword [edx + 0xc]
shl ebx, 3
sub edx, ebx
mov ebx, edx
xor edx, edx
jmp 0x508c33
cmp ax, 0x23
jne 0x506b98
mov ecx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea edx, [ebp - 0x20]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x20]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x1c]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x18]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov eax, dword [ebp - 0x14]
mov ecx, 2
push 0xffffffffffffffff
push 3
mov esi, dword [eax + 0x14]
mov edx, dword [eax + 0xc]
sub ecx, esi
push 0
push 1
mov dword [ebp - 0x38], 0x4011
lea eax, [edx + ecx*8]
lea ecx, [ebp - 0x38]
push ecx
mov dword [ebp - 0x30], eax
call fcn.00435f40
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea edx, [ebp - 0x14]
push edx
call esi
lea eax, [ebp - 0x18]
push eax
call esi
lea ecx, [ebp - 0x1c]
push ecx
call esi
lea edx, [ebp - 0x20]
push edx
call esi
movsx eax, word [0x550284]
mov esi, dword [0x54f708]
mov ecx, eax
sub ecx, dword [esi + 0x14]
mov edx, ecx
shl edx, 6
add edx, ecx
mov ecx, dword [esi + 0xc]
mov edi, dword [ecx + edx*4 + 0x100]
mov word [0x54f718], 0xfffe
movsx ecx, word [0x550288]
mov ebx, dword [edi + 0x14]
mov edx, ecx
sub edx, ebx
push 0x50a479
lea ebx, [edx*8]
sub ebx, edx
mov edx, dword [edi + 0xc]
mov edi, dword [0x5502cc]
shl ebx, 4
mov ebx, dword [ebx + edx + 0x10]
mov edx, edi
mov dword [ebp - 0xdc], ebx
sub edx, dword [ebx + 0x14]
lea ebx, [edx*8]
sub ebx, edx
mov edx, dword [ebp - 0xdc]
mov edx, dword [edx + 0xc]
mov edx, dword [edx + ebx*4 + 0x18]
mov ebx, dword [edx + 0x14]
mov edx, dword [edx + 0xc]
shl ebx, 3
sub edx, ebx
mov ebx, edx
xor edx, edx
mov dword [ebx + 0x14], edx
mov ebx, dword [esi + 0x14]
sub eax, ebx
mov ebx, eax
shl ebx, 6
add ebx, eax
mov eax, dword [esi + 0xc]
mov eax, dword [eax + ebx*4 + 0x100]
sub ecx, dword [eax + 0x14]
lea esi, [ecx*8]
sub esi, ecx
mov ecx, dword [eax + 0xc]
shl esi, 4
mov eax, dword [esi + ecx + 0x10]
mov ecx, dword [eax + 0x14]
mov eax, dword [eax + 0xc]
sub edi, ecx
lea ecx, [edi*8]
sub ecx, edi
mov eax, dword [eax + ecx*4 + 0x18]
mov ecx, dword [eax + 0x14]
mov eax, dword [eax + 0xc]
shl ecx, 3
sub eax, ecx
mov word [eax + 0x12], dx
jmp 0x50a3df
cmp ax, 0x24
jne 0x506d4f
mov ecx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea edx, [ebp - 0x20]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x20]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x1c]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x18]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov eax, dword [ebp - 0x14]
mov ecx, 3
push 0xffffffffffffffff
push 3
mov esi, dword [eax + 0x14]
mov edx, dword [eax + 0xc]
sub ecx, esi
push 0
push 1
mov dword [ebp - 0x38], 0x4011
lea eax, [edx + ecx*8]
lea ecx, [ebp - 0x38]
push ecx
mov dword [ebp - 0x30], eax
call fcn.00435f40
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea edx, [ebp - 0x14]
push edx
call esi
lea eax, [ebp - 0x18]
push eax
call esi
lea ecx, [ebp - 0x1c]
push ecx
call esi
lea edx, [ebp - 0x20]
push edx
call esi
movsx eax, word [0x550284]
mov esi, dword [0x54f708]
mov ecx, eax
sub ecx, dword [esi + 0x14]
mov edx, ecx
shl edx, 6
add edx, ecx
mov ecx, dword [esi + 0xc]
mov edi, dword [ecx + edx*4 + 0x100]
mov word [0x54f718], 0xfffe
movsx ecx, word [0x550288]
mov ebx, dword [edi + 0x14]
mov edx, ecx
sub edx, ebx
push 0x50a479
lea ebx, [edx*8]
sub ebx, edx
mov edx, dword [edi + 0xc]
mov edi, dword [0x5502cc]
shl ebx, 4
mov ebx, dword [ebx + edx + 0x10]
mov edx, edi
mov dword [ebp - 0xdc], ebx
sub edx, dword [ebx + 0x14]
lea ebx, [edx*8]
sub ebx, edx
mov edx, dword [ebp - 0xdc]
mov edx, dword [edx + 0xc]
mov edx, dword [edx + ebx*4 + 0x18]
mov ebx, dword [edx + 0x14]
mov edx, dword [edx + 0xc]
shl ebx, 3
sub edx, ebx
mov ebx, edx
xor edx, edx
mov dword [ebx + 0x1c], edx
mov ebx, dword [esi + 0x14]
sub eax, ebx
mov ebx, eax
shl ebx, 6
add ebx, eax
mov eax, dword [esi + 0xc]
mov eax, dword [eax + ebx*4 + 0x100]
sub ecx, dword [eax + 0x14]
lea esi, [ecx*8]
sub esi, ecx
mov ecx, dword [eax + 0xc]
shl esi, 4
mov eax, dword [esi + ecx + 0x10]
mov ecx, dword [eax + 0x14]
mov eax, dword [eax + 0xc]
sub edi, ecx
lea ecx, [edi*8]
sub ecx, edi
mov eax, dword [eax + ecx*4 + 0x18]
mov ecx, dword [eax + 0x14]
mov eax, dword [eax + 0xc]
shl ecx, 3
sub eax, ecx
mov word [eax + 0x1a], dx
jmp 0x50a3df
cmp ax, 0x25
jne 0x506de2
mov ecx, dword [0x54f708]
lea edx, [ebp - 0x1c]
push ecx
push edx
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4011
lea ecx, [eax + edx*4 + 0xd]
mov dword [ebp - 0x30], ecx
jmp 0x5089dd
cmp ax, 0x26
jne 0x506e78
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x1c]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x5502cc]
push 0xffffffffffffffff
push 3
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4011
lea ecx, [eax + edx*4 + 0xe]
mov dword [ebp - 0x30], ecx
jmp 0x5089e1
cmp ax, 0x27
jne 0x506f0e
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x1c]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x5502cc]
push 0xffffffffffffffff
push 0xe
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4011
lea ecx, [eax + edx*4 + 0xc]
mov dword [ebp - 0x30], ecx
jmp 0x5089e1
cmp ax, 0x28
jl 0x506f9c
cmp ax, 0x30
jg 0x506f9c
mov edx, dword [0x54f708]
sub ax, 0x28
movsx ecx, word [0x550284]
mov esi, dword [edx + 0x14]
mov word [0x54f718], 0xfffe
sub ecx, esi
push 0x50a479
mov esi, ecx
shl esi, 6
add esi, ecx
mov ecx, dword [edx + 0xc]
movsx eax, ax
mov edx, dword [ecx + esi*4 + 0x100]
movsx ecx, word [0x550288]
mov ebx, dword [edx + 0x14]
mov edx, dword [edx + 0xc]
sub ecx, ebx
lea esi, [ecx*8]
sub esi, ecx
shl esi, 4
mov ecx, dword [esi + edx + 0x6c]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 5
sub edx, eax
mov eax, dword [ecx + 0xc]
mov cx, word [eax + edx*2]
lea eax, [eax + edx*2]
neg cx
sbb ecx, ecx
and ecx, 0xfffffffe
add ecx, 2
mov word [eax], cx
jmp 0x50a3df
cmp ax, 0x31
jne 0x506fba
call fcn.00504a10
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x32
jne 0x50702d
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x18]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
lea ecx, [edx + eax + 0x28]
push 0xffffffffffffffff
push 3
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x38], 0x4011
push 0
jmp 0x50642c
cmp ax, 0x33
jne 0x507052
mov edx, dword [0x5502cc]
push edx
call fcn.00504ba0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x34
jne 0x507075
mov dword [0x5502d0], 1
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x35
jne 0x507098
mov dword [0x5502d0], 0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x36
jne 0x507138
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x1c]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x5502cc]
push 0xffffffffffffffff
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4003
lea ecx, [eax + edx*4 + 8]
movsx edx, word [0x54ee94]
push edx
push 0
mov dword [ebp - 0x30], ecx
push 1
jmp 0x507e45
cmp ax, 0x37
jne 0x5071ff
mov eax, dword [0x54eb2c]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x68]
test eax, eax
fnclex
jge 0x507168
mov edx, dword [0x54eb2c]
push 0x68
push 0x421fa4
push edx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov ecx, dword [0x54f708]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
mov eax, dword [0x5502cc]
mov edx, dword [0x54eb2c]
mov edi, dword [ecx + 0x14]
mov ecx, dword [ecx + 0xc]
sub eax, edi
mov esi, dword [edx]
lea edi, [eax*8]
sub edi, eax
mov eax, dword [ecx + edi*4 + 8]
push eax
push edx
call dword [esi + 0x60]
test eax, eax
fnclex
jge 0x50a3a4
mov ecx, dword [0x54eb2c]
push 0x60
push 0x421fa4
push ecx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x38
jne 0x507292
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x1c]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4011
lea ecx, [eax + edx*4 + 0xc]
mov dword [ebp - 0x30], ecx
jmp 0x5089dd
cmp ax, 0x39
jne 0x5072a7
mov eax, dword [0x54f708]
lea ecx, [ebp - 0x1c]
push eax
push ecx
jmp 0x506d64
cmp ax, 0x3a
jne 0x507319
mov ecx, dword [0x54f708]
mov word [0x54f718], 0xfffe
movsx eax, word [0x550284]
mov edi, dword [ecx + 0x14]
push 0x50a479
sub eax, edi
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov byte [eax + edx*4 + 0xc], 1
jmp 0x50a3df
cmp ax, 0x3b
jne 0x5073d4
mov ecx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea edx, [ebp - 0x50]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x50]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x4c]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x4c]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x48]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x48]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov bl, byte [eax + edx*4 + 0xe]
lea eax, [eax + edx*4 + 0xc]
inc bl
movzx cx, bl
cmp cx, word [0x54ee94]
mov byte [eax + 2], bl
jle 0x5073ba
mov byte [eax + 2], 0
mov byte [eax], 0
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea edx, [ebp - 0x48]
push edx
call esi
lea eax, [ebp - 0x4c]
push eax
call esi
lea ecx, [ebp - 0x50]
jmp 0x506446
cmp ax, 0x3c
jne 0x50744d
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x18]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
movsx eax, word [0x550288]
mov edx, dword [ecx + 0x14]
push 9
sub eax, edx
push 0
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov dword [ebp - 0x38], 0x4011
lea ecx, [edx + eax + 0x2c]
movsx edx, di
mov dword [ebp - 0x30], ecx
push edx
jmp 0x50a370
cmp ax, 0x3d
jne 0x50762a
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x1c]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x5502cc]
push 0xffffffffffffffff
push 8
mov edx, dword [ecx + 0x14]
push 0
sub eax, edx
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4011
lea ecx, [eax + edx*4]
lea eax, [ebp - 0x38]
movsx edx, di
push edx
push eax
mov dword [ebp - 0x30], ecx
call fcn.00435f40
mov edi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea ecx, [ebp - 0x14]
push ecx
call edi
lea edx, [ebp - 0x18]
push edx
call edi
lea eax, [ebp - 0x1c]
push eax
call edi
mov ecx, dword [0x54f708]
lea edx, [ebp - 0x28]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x28]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x24]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x24]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x20]
push ecx
push edx
call esi
mov eax, dword [0x54f708]
lea ecx, [ebp - 0x1c]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov edx, dword [ebp - 0x20]
mov ecx, dword [0x5502cc]
mov eax, ecx
sub eax, dword [edx + 0x14]
lea esi, [eax*8]
sub esi, eax
mov eax, dword [edx + 0xc]
lea edx, [eax + esi*4 + 6]
mov eax, dword [ebp - 0x14]
push edx
mov ebx, dword [eax + 0x14]
mov eax, dword [eax + 0xc]
sub ecx, ebx
lea edx, [ecx*8]
sub edx, ecx
lea ecx, [eax + edx*4]
push ecx
call fcn.005050a0
lea edx, [ebp - 0x14]
push edx
call edi
lea eax, [ebp - 0x18]
push eax
call edi
lea ecx, [ebp - 0x1c]
push ecx
call edi
lea edx, [ebp - 0x20]
push edx
call edi
lea eax, [ebp - 0x24]
push eax
call edi
lea ecx, [ebp - 0x28]
push ecx
call edi
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x3e
jne 0x5076c1
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x1c]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x5502cc]
push 0xffffffffffffffff
push 0xb
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4011
lea ecx, [eax + edx*4 + 1]
mov dword [ebp - 0x30], ecx
jmp 0x507e3f
cmp ax, 0x3f
je 0x5099ec
cmp ax, 0x40
je 0x5099ec
cmp ax, 0x41
je 0x5099ec
cmp ax, 0x42
je 0x50996b
cmp ax, 0x43
je 0x50996b
cmp ax, 0x44
je 0x50996b
cmp ax, 0x45
jne 0x507806
mov ecx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea edx, [ebp - 0x6c]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x6c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x68]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x68]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x64]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x64]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
lea esi, [eax + edx*4 + 0xc]
mov al, byte [eax + edx*4 + 0xc]
cmp al, 1
jne 0x5077db
mov eax, dword [0x54eb2c]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x68]
test eax, eax
fnclex
jge 0x5077af
mov edx, dword [0x54eb2c]
push 0x68
push 0x421fa4
push edx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov eax, dword [0x54eb2c]
xor edx, edx
mov dl, byte [esi + 2]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x60]
test eax, eax
fnclex
jge 0x5077db
mov ecx, dword [0x54eb2c]
push 0x60
push 0x421fa4
push ecx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea edx, [ebp - 0x64]
push edx
call esi
lea eax, [ebp - 0x68]
push eax
call esi
lea ecx, [ebp - 0x6c]
push ecx
call esi
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x46
jne 0x507826
push 0
call fcn.00503ad0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x47
jl 0x507852
cmp ax, 0x4f
jg 0x507852
sub ax, 0x46
movsx edx, ax
push edx
call fcn.00504e40
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x50
jne 0x507875
push 0x7d7c
call fcn.005039d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x51
jl 0x5078a1
cmp ax, 0x58
jg 0x5078a1
sub ax, 0x50
movsx eax, ax
push eax
call fcn.00504d00
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x59
jne 0x5078c1
push 1
call fcn.00503ad0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x5a
jne 0x5078e1
push 2
call fcn.00503ad0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x5b
je 0x509892
cmp ax, 0x5c
je 0x509892
cmp ax, 0x5d
je 0x509892
cmp ax, 0x5e
jne 0x5079d0
mov ecx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea edx, [ebp - 0x88]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x88]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x84]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x84]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x80]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x80]
mov eax, dword [0x5502cc]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov cl, byte [eax + edx*4 + 0xe]
lea eax, [eax + edx*4 + 0xc]
test cl, cl
setne cl
dec ecx
lea edx, [ebp - 0x80]
and ecx, 0x61
push edx
mov byte [eax + 2], cl
call esi
lea eax, [ebp - 0x84]
push eax
call esi
lea ecx, [ebp - 0x88]
push ecx
call esi
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x5f
jne 0x507a67
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x1c]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x5502cc]
push 0xffffffffffffffff
push 2
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4011
lea ecx, [eax + edx*4 + 1]
mov dword [ebp - 0x30], ecx
jmp 0x5097a5
cmp ax, 0x64
jne 0x507a8d
mov eax, dword [0x55028c]
mov word [0x54f718], 0xfffe
not eax
mov word [0x55028c], ax
push 0x50a479
jmp 0x50a3df
cmp ax, 0x65
jne 0x507b8b
mov ecx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea edx, [ebp - 0x94]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x94]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x90]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x90]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x8c]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x8c]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
lea eax, [eax + edx*4]
mov dl, byte [eax + 0xc]
inc dl
mov cl, dl
mov byte [eax + 0xc], dl
cmp cl, 7
jne 0x507b35
mov byte [eax + 0xc], 0x15
cmp byte [eax + 0xc], 0x17
jne 0x507b3f
mov byte [eax + 0xc], 0x1a
cmp byte [eax + 0xc], bl
jne 0x507b48
mov byte [eax + 0xc], 0
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea ecx, [ebp - 0x8c]
push ecx
mov dword [eax + 8], 0
mov byte [eax + 0xd], 0
mov byte [eax + 0xe], 0
call esi
lea edx, [ebp - 0x90]
push edx
call esi
lea eax, [ebp - 0x94]
push eax
call esi
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x6e
jne 0x507bab
push 3
call fcn.00504190
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x78
jne 0x507c4f
mov ecx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
movsx eax, word [0x550288]
mov ebx, dword [ecx + 0x14]
push 3
sub eax, ebx
push 0
push 1
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov dword [ebp - 0x38], 0x4011
lea ecx, [edx + eax + 0x27]
lea edx, [ebp - 0x38]
push edx
mov dword [ebp - 0x30], ecx
call fcn.00435f40
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea eax, [ebp - 0x14]
push eax
call esi
lea ecx, [ebp - 0x18]
push ecx
call esi
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x82
jne 0x507ce3
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x1c]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x6c]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov eax, 2
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
push 8
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 5
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4002
lea ecx, [eax + edx*2]
mov dword [ebp - 0x30], ecx
jmp 0x5097a5
cmp ax, 0x8c
jne 0x507d51
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x1c]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x6c]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov eax, 5
jmp 0x507cbd
cmp ax, 0x8d
jne 0x507efb
mov eax, dword [0x54f708]
movsx ecx, word [0x550284]
mov ebx, dword [eax + 0x14]
push eax
sub ecx, ebx
mov edx, ecx
shl edx, 6
add edx, ecx
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + edx*4 + 0x100]
movsx ecx, word [0x550288]
mov esi, dword [edx + 0x14]
mov edx, dword [edx + 0xc]
sub ecx, esi
lea esi, [ecx*8]
sub esi, ecx
mov ecx, dword [0x5502cc]
shl esi, 4
mov edx, dword [esi + edx + 0x10]
sub ecx, dword [edx + 0x14]
lea esi, [ecx*8]
sub esi, ecx
mov ecx, dword [edx + 0xc]
cmp word [ecx + esi*4 + 6], 0xffff
jne 0x507e79
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea edx, [ebp - 0x1c]
push edx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4003
lea ecx, [eax + edx*4 + 8]
mov dword [ebp - 0x30], ecx
push 0xffffffffffffffff
push 8
movsx edx, di
push 0
push edx
lea eax, [ebp - 0x38]
push eax
call fcn.00435f40
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea ecx, [ebp - 0x14]
push ecx
call esi
lea edx, [ebp - 0x18]
push edx
call esi
lea eax, [ebp - 0x1c]
push eax
call esi
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x1c]
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4011
lea ecx, [eax + edx*4 + 0xe]
mov dword [ebp - 0x30], ecx
jmp 0x507e3b
cmp ax, 0x96
jl 0x507f27
cmp ax, 0xb3
jg 0x507f27
sub ax, 0x95
movsx ecx, ax
push ecx
call fcn.00504500
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xb4
jne 0x507fbb
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x1c]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x6c]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, 8
push 0xffffffffffffffff
push 4
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 5
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4002
lea ecx, [eax + edx*2]
mov dword [ebp - 0x30], ecx
jmp 0x5089e1
cmp ax, 0xb5
jl 0x507fe7
cmp ax, 0xbc
jg 0x507fe7
sub ax, 0xb4
movsx eax, ax
push eax
call fcn.005043b0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xbd
jne 0x50800a
push 0x7fd7
call fcn.005039d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xbe
jne 0x50802d
push 0x7e78
call fcn.005039d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xbf
jl 0x5080d4
cmp ax, 0xc6
jg 0x5080d4
mov ecx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea edx, [ebp - 0x1c]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x54]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ax, word [0x54f71a]
push 0xffffffffffffffff
sub ax, 0xbe
push 0xf
movsx ecx, ax
mov eax, dword [ebp - 0x14]
push 0
mov esi, dword [eax + 0x14]
mov edx, dword [eax + 0xc]
sub ecx, esi
mov dword [ebp - 0x38], 0x4011
lea eax, [edx + ecx*4]
movsx ecx, di
mov dword [ebp - 0x30], eax
push ecx
jmp 0x5089e5
cmp ax, 0xc7
jne 0x5080f7
push 0xffff8000
call fcn.005039d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xc8
jne 0x50816b
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x18]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
movsx eax, word [0x550288]
mov ebx, dword [ecx + 0x14]
push 2
sub eax, ebx
push 0
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov dword [ebp - 0x38], 0x4002
lea ecx, [edx + eax + 0x4c]
mov dword [ebp - 0x30], ecx
jmp 0x50642c
cmp ax, 0xc9
jne 0x508190
mov edx, dword [0x5502cc]
push edx
call fcn.00503f00
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xd2
jne 0x508204
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x18]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
movsx eax, word [0x550288]
mov ebx, dword [ecx + 0x14]
push 1
sub eax, ebx
push 0
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov dword [ebp - 0x38], 0x4011
lea ecx, [edx + eax + 0x2b]
mov dword [ebp - 0x30], ecx
jmp 0x50642c
cmp ax, 0xd9
jne 0x508286
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x1c]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x6c]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov eax, 2
mov ecx, dword [ebp - 0x14]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 5
sub edx, eax
mov eax, dword [ecx + 0xc]
lea ecx, [eax + edx*2]
jmp 0x5089d3
cmp ax, 0xda
jne 0x508319
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x1c]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x6c]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, 3
push 0xffffffffffffffff
push 3
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 5
sub edx, eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x38], 0x4002
lea ecx, [eax + edx*2]
mov dword [ebp - 0x30], ecx
jmp 0x5089e1
cmp ax, 0xdb
jne 0x508387
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x1c]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x6c]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov eax, 4
jmp 0x50826e
cmp ax, 0xdc
jne 0x5083a7
push 2
call fcn.00504290
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xe3
jne 0x5083c5
call fcn.005232d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xe4
jne 0x5083e5
push 3
call fcn.00504290
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xe5
jne 0x50847d
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x1c]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x6c]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
push 8
push 0
mov eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 5
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 1
sub eax, edx
mov dword [ebp - 0x38], 0x4002
movsx ecx, di
add eax, 0x36
push ecx
mov dword [ebp - 0x30], eax
jmp 0x5089e5
cmp ax, 0xe6
jne 0x508515
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x1c]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x6c]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
push 8
push 0
mov eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 5
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 1
sub eax, edx
mov dword [ebp - 0x38], 0x4002
movsx ecx, di
add eax, 0x38
push ecx
mov dword [ebp - 0x30], eax
jmp 0x5089e5
cmp ax, 0xed
jne 0x508595
mov eax, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea ecx, [ebp - 0x1c]
push eax
push ecx
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x6c]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 5
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 1
sub eax, edx
add eax, 0x3a
jmp 0x50985c
cmp ax, 0xee
jne 0x5085ab
mov edx, dword [0x54f708]
lea eax, [ebp - 0x1c]
push edx
push eax
jmp 0x5097f1
cmp ax, 0xef
jne 0x50862c
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x1c]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x6c]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 5
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 1
sub eax, edx
add eax, 0x7a
jmp 0x50985c
cmp ax, 0xf0
jne 0x50864c
push 3
call fcn.00503ad0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xf7
jne 0x50866c
push 4
call fcn.00503ad0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xf8
jne 0x50868c
push 4
call fcn.00504290
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x101
jl 0x5086b5
cmp ax, 0x104
jg 0x5086b5
sub ax, 0x101
push eax
call fcn.00523090
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x105
jne 0x5086da
push 0x5502cc
push 1
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x106
jne 0x5086ff
push 0x5502cc
push 2
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x107
jne 0x508724
push 0x5502cc
push 3
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x108
jne 0x508749
push 0x5502cc
push 4
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x109
jne 0x50876e
push 0x5502cc
push 5
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x10a
jne 0x508793
push 0x5502cc
push 6
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x10b
jne 0x5087b8
push 0x5502cc
push 7
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x10c
jne 0x5087dd
push 0x5502cc
push 8
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x10d
jne 0x508802
push 0x5502cc
push 9
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x10e
jne 0x508827
push 0x5502cc
push 0xa
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x10f
jne 0x50884c
push 0x5502cc
push 0xb
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x110
jne 0x508871
push 0x5502cc
push 0xc
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x111
jne 0x508896
push 0x5502cc
push 0xd
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x112
jne 0x5088bb
push 0x5502cc
push 0xe
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x113
jne 0x5088e0
push 0x5502cc
push 0xf
call fcn.00504020
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x114
jne 0x508905
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
lea ecx, [eax + edx*4 + 4]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x38], 0x4002
push 0xffffffffffffffff
push 1
push 0
push 1
lea edx, [ebp - 0x38]
push edx
call fcn.00435f40
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea eax, [ebp - 0x14]
push eax
call esi
lea ecx, [ebp - 0x18]
push ecx
call esi
lea edx, [ebp - 0x1c]
push edx
jmp 0x507e64
mov dword [ebx + 0xc], edx
mov ebx, dword [esi + 0x14]
sub eax, ebx
mov word [0x54f718], 0xfffe
mov ebx, eax
push 0x50a479
shl ebx, 6
add ebx, eax
mov eax, dword [esi + 0xc]
mov eax, dword [eax + ebx*4 + 0x100]
sub ecx, dword [eax + 0x14]
lea esi, [ecx*8]
sub esi, ecx
mov ecx, dword [eax + 0xc]
shl esi, 4
mov eax, dword [esi + ecx + 0x10]
mov ecx, dword [eax + 0x14]
mov eax, dword [eax + 0xc]
sub edi, ecx
lea ecx, [edi*8]
sub ecx, edi
mov eax, dword [eax + ecx*4 + 0x18]
mov ecx, dword [eax + 0x14]
mov eax, dword [eax + 0xc]
shl ecx, 3
sub eax, ecx
mov word [eax + 0xa], dx
jmp 0x50a3df
push 0
lea edx, [ebp - 0x38]
push 1
push edx
call fcn.00435f40
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea eax, [ebp - 0x14]
push eax
call esi
lea ecx, [ebp - 0x18]
push ecx
call esi
lea edx, [ebp - 0x1c]
push edx
call esi
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
call esi
mov ecx, dword [ebp - 0x1c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x6c]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 5
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 1
sub eax, edx
add eax, 0x3c
push 0xffffffffffffffff
push 1
push 0
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x38], 0x4002
push 1
lea ecx, [ebp - 0x38]
push ecx
call fcn.00435f40
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea edx, [ebp - 0x14]
push edx
call esi
lea eax, [ebp - 0x18]
push eax
call esi
lea ecx, [ebp - 0x1c]
push ecx
jmp 0x507e64
mov edx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea eax, [ebp - 0x7c]
push edx
push eax
call esi
mov ecx, dword [ebp - 0x7c]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x78]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x78]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x74]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x74]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x18]
lea edx, [ebp - 0x70]
push ecx
push edx
call esi
mov ax, word [0x54f71a]
sub ax, 0x5a
movsx ecx, ax
mov eax, dword [ebp - 0x70]
mov edi, dword [eax + 0x14]
mov edx, dword [eax + 0xc]
sub ecx, edi
inc word [edx + ecx*8 + 2]
lea eax, [edx + ecx*8]
mov cx, word [edx + ecx*8 + 2]
cmp cx, word [0x54ee94]
jle 0x50994a
mov word [eax + 2], 0
mov byte [eax], 0
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea eax, [ebp - 0x70]
push eax
call esi
lea ecx, [ebp - 0x74]
push ecx
call esi
lea edx, [ebp - 0x78]
push edx
call esi
lea eax, [ebp - 0x7c]
push eax
jmp 0x5097c8
mov edx, dword [0x54f708]
sub ax, 0x41
movsx ecx, word [0x550284]
mov esi, dword [edx + 0x14]
mov word [0x54f718], 0xfffe
sub ecx, esi
push 0x50a479
mov esi, ecx
shl esi, 6
add esi, ecx
mov ecx, dword [edx + 0xc]
mov edx, dword [ecx + esi*4 + 0x100]
movsx ecx, word [0x550288]
mov ebx, dword [edx + 0x14]
mov edx, dword [edx + 0xc]
sub ecx, ebx
lea esi, [ecx*8]
sub esi, ecx
mov ecx, dword [0x5502cc]
shl esi, 4
mov edx, dword [esi + edx + 0x10]
sub ecx, dword [edx + 0x14]
lea esi, [ecx*8]
sub esi, ecx
mov ecx, dword [edx + 0xc]
movsx edx, ax
mov ecx, dword [ecx + esi*4 + 0x18]
mov eax, dword [ecx + 0x14]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov byte [eax + edx*8], 1
jmp 0x50a3df
mov ecx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea edx, [ebp - 0x60]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x60]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x100]
lea edx, [ebp - 0x5c]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x5c]
movsx eax, word [0x550288]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
shl edx, 4
mov ecx, dword [edx + eax + 0x10]
lea edx, [ebp - 0x58]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x58]
mov eax, dword [0x5502cc]
sub eax, dword [ecx + 0x14]
lea edx, [eax*8]
sub edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0x18]
lea edx, [ebp - 0x54]
push ecx
push edx
call esi
mov ax, word [0x54f71a]
sub ax, 0x3e
movsx ecx, ax
mov eax, dword [ebp - 0x54]
mov edx, dword [eax + 0x14]
sub ecx, edx
mov edx, dword [eax + 0xc]
mov al, byte [edx + ecx*8]
lea esi, [edx + ecx*8]
cmp al, 1
jne 0x509ae0
mov eax, dword [0x54eb2c]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x68]
test eax, eax
fnclex
jge 0x509ab5
mov edx, dword [0x54eb2c]
push 0x68
push 0x421fa4
push edx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
movsx edx, word [esi + 2]
mov eax, dword [0x54eb2c]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x60]
test eax, eax
fnclex
jge 0x509ae0
mov ecx, dword [0x54eb2c]
push 0x60
push 0x421fa4
push ecx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaHresultCheckObj]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea edx, [ebp - 0x54]
push edx
call esi
lea eax, [ebp - 0x58]
push eax
call esi
lea ecx, [ebp - 0x5c]
push ecx
call esi
lea edx, [ebp - 0x60]
jmp 0x5097c7
cmp ax, bx
jne 0x509b24
push ebx
call fcn.005050d0
mov dword [0x54eb3c], ebx
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 2
jne 0x509b64
cmp cx, 3
jne 0x509b4a
push 4
call fcn.005050d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
push 3
call fcn.005050d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 3
jne 0x509bb8
mov ax, word [0x550298]
mov ecx, dword [0x550274]
mov word [0x550288], ax
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0xc]
movsx eax, ax
sub eax, edx
lea eax, [eax + eax*4]
mov edx, dword [ecx + eax*4]
mov ecx, 0x550290
call dword [sym.imp.MSVBVM60.DLL___vbaStrCopy]
push 3
call fcn.005050d0
mov dword [0x54eb3c], ebx
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 4
jne 0x509bd8
mov word [0x550288], bx
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 5
jne 0x509c18
cmp word [0x550288], bx
push ebx
jne 0x509c00
call fcn.00501b50
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
call fcn.00501d10
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 6
jne 0x509c41
cmp word [0x550288], bx
push 0xffffffffffffffff
jne 0x509c00
call fcn.00501b50
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xb
jl 0x509c6a
cmp ax, 0x13
jg 0x509c6a
sub ax, 0xb
mov word [0x54f718], 0xfffe
mov word [0x550294], ax
push 0x50a479
jmp 0x50a3df
cmp ax, 0x65
jl 0x50a3a4
cmp ax, 0xc7
jg 0x50a3a4
jmp 0x509f21
cmp ax, bx
je 0x50a053
cmp ax, 1
jne 0x509cab
push ebx
call fcn.00503460
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 2
jne 0x509d19
mov eax, dword [0x54f708]
lea ecx, [ebp - 0x44]
push eax
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
mov ecx, dword [ebp - 0x44]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
lea eax, [eax + edx*4 + 8]
mov dl, byte [eax + 1]
inc dl
mov cl, dl
mov byte [eax + 1], dl
cmp cl, 3
jne 0x509cef
mov byte [eax + 1], 0
mov cx, word [0x55028a]
push ecx
call fcn.004a9560
lea edx, [ebp - 0x44]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 3
jne 0x509d39
push 0xfffffffffffffff6
call fcn.005019f0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 4
jne 0x509d59
push 0xa
call fcn.005019f0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 5
jne 0x509d66
push 0x63
jmp 0x50a150
cmp ax, 6
jne 0x509d8b
push 2
call fcn.005050d0
call fcn.00501ad0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 7
jne 0x509dab
push 1
call fcn.005050d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 8
jne 0x509dc9
call fcn.00502010
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 9
jne 0x509e1c
mov eax, dword [0x54f708]
lea ecx, [ebp - 0x14]
push eax
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
mov ecx, dword [ebp - 0x14]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
lea ecx, [eax + edx*4]
push ecx
call fcn.0044a710
lea edx, [ebp - 0x14]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xa
jne 0x509e6f
mov eax, dword [0x54f708]
lea ecx, [ebp - 0x14]
push eax
push ecx
call dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
mov ecx, dword [ebp - 0x14]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
lea ecx, [eax + edx*4]
push ecx
call fcn.0044a2d0
lea edx, [ebp - 0x14]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xb
jl 0x509f15
cmp ax, 0x63
jg 0x509f15
call fcn.0043f110
mov edx, dword [0x54f708]
mov cx, word [0x54f71a]
movsx eax, word [0x550284]
mov esi, dword [edx + 0x14]
sub cx, 0xa
sub eax, esi
mov word [0x550288], cx
mov esi, eax
mov word [0x550298], bx
shl esi, 6
add esi, eax
mov eax, dword [edx + 0xc]
mov edx, dword [eax + esi*4 + 0x100]
movsx eax, cx
mov ecx, dword [edx + 0x14]
mov edx, dword [edx + 0xc]
sub eax, ecx
lea ecx, [eax*8]
sub ecx, eax
shl ecx, 4
movzx ax, byte [ecx + edx]
add eax, 5
push eax
call fcn.005050d0
mov dword [0x54eb3c], ebx
mov word [0x55028e], bx
mov word [0x54ecdc], bx
call fcn.0043ea30
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x65
jl 0x509f69
cmp ax, 0xc7
jg 0x509f69
mov edx, dword [0x550274]
sub ax, 0x64
movsx ecx, word [0x550298]
mov edi, dword [edx + 0x14]
mov edx, dword [edx + 0xc]
sub ecx, edi
movsx eax, ax
lea ecx, [ecx + ecx*4]
mov ecx, dword [edx + ecx*4 + 0x10]
mov edx, dword [ecx + 0x14]
mov ecx, dword [ecx + 0xc]
sub eax, edx
movsx edx, word [ecx + eax*2]
push edx
call fcn.004a56a0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xc9
jl 0x509f92
cmp ax, 0x12b
jg 0x509f92
sub ax, 0xc9
mov word [0x54f718], 0xfffe
mov word [0x550296], ax
push 0x50a479
jmp 0x50a3df
cmp ax, 0x1f4
jne 0x509fb0
call fcn.00502070
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x258
jne 0x509fce
call fcn.005048b0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x2bc
jne 0x509fee
push 0xffffffffffffffff
call fcn.00503460
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x3e9
jl 0x50a01a
cmp ax, 0x7cf
jg 0x50a01a
sub ax, 0x3e8
movsx eax, ax
push eax
call fcn.00503240
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0x7d1
jl 0x50a3a4
cmp ax, 0xbb7
jg 0x50a3a4
sub ax, 0x7d0
movsx ecx, ax
push ecx
call fcn.00503350
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, bx
jne 0x50a079
push ebx
call fcn.005050d0
mov word [0x550284], bx
mov dword [0x54eb3c], ebx
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 1
jne 0x50a099
push 0x5b
call fcn.005050d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 2
jne 0x50a108
mov edx, dword [0x54f708]
lea eax, [ebp - 0x40]
push edx
push eax
call dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
mov ecx, dword [ebp - 0x40]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
lea eax, [eax + edx*4 + 8]
mov dl, byte [eax + 1]
inc dl
mov cl, dl
mov byte [eax + 1], dl
cmp cl, 3
jne 0x50a0de
mov byte [eax + 1], 0
mov cx, word [0x55028a]
push ecx
call fcn.004a9560
lea edx, [ebp - 0x40]
push edx
call dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 3
jne 0x50a128
push 0xfffffffffffffff6
call fcn.005019f0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 4
jne 0x50a148
push 0xa
call fcn.005019f0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 5
jne 0x50a17c
push 0x62
call fcn.005050d0
mov word [0x550288], bx
mov dword [0x54eb3c], ebx
mov word [0x54eb3a], bx
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 6
jne 0x50a1a1
push 2
call fcn.005050d0
call fcn.00501ad0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 7
jne 0x50a1c1
push 0xffffffffffffffff
call fcn.005050d0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 8
jne 0x50a1df
call fcn.00502010
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 0xb
jl 0x50a208
cmp ax, 0x1d
jg 0x50a208
sub ax, 0xb
mov word [0x54f718], 0xfffe
mov word [0x550294], ax
push 0x50a479
jmp 0x50a3df
cmp ax, 0x64
jle 0x50a3a4
mov edx, dword [0x54f708]
mov si, 0x64
movsx ecx, word [0x550284]
mov edi, dword [edx + 0x14]
sub si, ax
sub ecx, edi
sub ax, 0x64
mov edi, ecx
mov word [0x54f718], 0xfffe
shl edi, 6
add edi, ecx
mov ecx, dword [edx + 0xc]
mov edx, dword [0x54f70c]
push 0x50a479
mov word [ecx + edi*4 + 2], si
movsx ecx, word [0x55028a]
mov edi, dword [edx + 0x14]
mov edx, dword [edx + 0xc]
sub ecx, edi
lea ecx, [ecx + ecx*2]
shl ecx, 5
mov word [ecx + edx + 0x42], ax
jmp 0x50a3df
cmp ax, bx
jne 0x50a2be
cmp cx, 0x62
jne 0x50a29d
push 0xffffffffffffffff
call fcn.005050d0
mov word [0x550288], bx
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
push 1
call fcn.005050d0
mov word [0x550288], bx
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 1
jne 0x50a2dc
call fcn.00503be0
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 2
jne 0x50a309
movsx eax, word [0x550288]
push eax
call fcn.00503de0
mov word [0x550288], bx
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
cmp ax, 3
jne 0x50a38e
mov ecx, dword [0x54f708]
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryLock]
lea edx, [ebp - 0x18]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x18]
movsx eax, word [0x550284]
sub eax, dword [ecx + 0x14]
mov edx, eax
shl edx, 6
add edx, eax
mov eax, dword [ecx + 0xc]
mov ecx, dword [eax + edx*4 + 0xfc]
lea edx, [ebp - 0x14]
push ecx
push edx
call esi
mov ecx, dword [ebp - 0x14]
push 0xffffffffffffffff
movsx eax, word [0x550288]
mov esi, dword [ecx + 0x14]
mov ecx, dword [ecx + 0xc]
sub eax, esi
push 2
push ebx
mov dword [ebp - 0x38], 0x4011
lea eax, [eax + eax*2]
push 1
lea edx, [ecx + eax*4]
mov dword [ebp - 0x30], edx
lea eax, [ebp - 0x38]
push eax
call fcn.00435f40
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea ecx, [ebp - 0x14]
push ecx
call esi
lea edx, [ebp - 0x18]
push edx
jmp 0x507e64
cmp ax, 0xb
jl 0x50a3a4
cmp ax, 0x14
jg 0x50a3a4
sub ax, 0xa
mov word [0x550288], ax
mov word [0x54f718], 0xfffe
push 0x50a479
jmp 0x50a3df
mov esi, dword [sym.imp.MSVBVM60.DLL___vbaAryUnlock]
lea eax, [ebp - 0x40]
push eax
call esi
lea ecx, [ebp - 0x44]
push ecx
call esi
lea edx, [ebp - 0x48]
push edx
call esi
lea eax, [ebp - 0x4c]
push eax
call esi
lea ecx, [ebp - 0x50]
push ecx
call esi
lea edx, [ebp - 0x54]
push edx
call esi
lea eax, [ebp - 0x58]
push eax
call esi
lea ecx, [ebp - 0x5c]
push ecx
call esi
lea edx, [ebp - 0x60]
push edx
call esi
lea eax, [ebp - 0x64]
push eax
call esi
lea ecx, [ebp - 0x68]
push ecx
call esi
lea edx, [ebp - 0x6c]
push edx
call esi
lea eax, [ebp - 0x70]
push eax
call esi
lea ecx, [ebp - 0x74]
push ecx
call esi
lea edx, [ebp - 0x78]
push edx
call esi
lea eax, [ebp - 0x7c]
push eax
call esi
lea ecx, [ebp - 0x80]
push ecx
call esi
lea edx, [ebp - 0x84]
push edx
call esi
lea eax, [ebp - 0x88]
push eax
call esi
lea ecx, [ebp - 0x8c]
push ecx
call esi
lea edx, [ebp - 0x90]
push edx
call esi
lea eax, [ebp - 0x94]
push eax
call esi
ret