Function at 0x100c4f10
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1015d4dc
mov eax, dword fs:[0]
push eax
sub esp, 0x170
mov eax, dword [0x1021eb80]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x104], ecx
mov dword [ebp - 0xfc], 0
mov ebx, dword [0x101a70f4]
push 0
sub esp, 8
mov dword [ebp - 4], 1
mov ecx, esp
mov dword [ebp - 0xfc], esp
push 0
call ebx
sub esp, 8
mov byte [ebp - 4], 2
mov ecx, esp
mov dword [ebp - 0xf8], esp
push 0
call ebx
sub esp, 8
mov byte [ebp - 4], 3
mov ecx, esp
mov dword [ebp - 0x144], esp
push 0
call ebx
mov esi, dword [0x101a70ec]
sub esp, 8
mov ecx, esp
mov dword [ebp - 0x110], esp
mov byte [ebp - 4], 4
push 0x10229af8
call esi
sub esp, 8
mov byte [ebp - 4], 5
mov ecx, esp
mov dword [ebp - 0x118], esp
push 0x10229af0
call esi
sub esp, 8
mov byte [ebp - 4], 6
mov ecx, esp
mov dword [ebp - 0x120], esp
push 0
call ebx
sub esp, 8
mov byte [ebp - 4], 7
mov ecx, esp
mov dword [ebp - 0x128], esp
push 0
call ebx
sub esp, 8
mov byte [ebp - 4], 8
mov ecx, esp
mov dword [ebp - 0x108], esp
push 0x10229ae8
call esi
sub esp, 8
mov byte [ebp - 4], 9
mov ecx, esp
mov dword [ebp - 0xe8], esp
push 0x10229ae0
call esi
push dword [ebp + 0x5c]
lea eax, [ebp + 0x48]
mov byte [ebp - 4], 0xa
push dword [ebp + 0x54]
sub esp, 0xc
mov ecx, esp
push eax
call dword [0x101a7098]
sub esp, 0x3c
mov edi, esp
mov dword [ebp - 0xec], edi
mov dword [edi], vtable.SmartPointers::CountedPtr_class_DataMgmt::TaxForm_.0
lea esi, [edi + 0xc]
push 2
push esi
call fcn.101342cd
lea eax, [ebp + 0x14]
push eax
push esi
call fcn.1000f610
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x10]
push eax
mov dword [edi + 8], eax
call fcn.1000e770
lock inc dword [eax]
lea eax, [ebp + 0x14]
push eax
call fcn.101342e5
push esi
call fcn.101342e5
mov dword [edi], vtable.DataMgmt::TaxFormPtr.0
add esp, 0x1c
mov edi, dword [ebp - 0x104]
mov ecx, edi
mov byte [ebp - 4], 1
call fcn.100ced80
mov ecx, dword [ebp + 0xc]
push 0x10229a68
call dword [0x101a6028]
cmp dword [ebp + 0x58], eax
mov ecx, edi
lea eax, [ebp - 0x148]
push eax
lea eax, [ebp - 0x114]
setne byte [ebp - 0xf8]
push eax
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x13c]
push eax
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0x124]
push eax
lea eax, [ebp - 0x12c]
push eax
mov eax, dword [ebp + 0x54]
push eax
call fcn.100a9f40
lea eax, [ebp - 0x17c]
push eax
lea eax, [ebp - 0x174]
push eax
push 0
sub esp, 8
mov ecx, esp
mov dword [ebp - 0xec], esp
push 0
call ebx
mov esi, dword [0x101a70ec]
sub esp, 8
mov ecx, esp
mov byte [ebp - 4], 0xb
push 0x10236c00
call esi
mov esi, dword [0x101a6dd0]
mov byte [ebp - 4], 1
mov ecx, dword [edi + 0xc0]
push 0x1022bb38
call esi
xorps xmm0, xmm0
lea eax, [ebp - 0x150]
push eax
lea eax, [ebp - 0x134]
movsd qword [ebp - 0x10c], xmm0
movsd qword [ebp - 0x164], xmm0
movsd qword [ebp - 0x16c], xmm0
movsd qword [ebp - 0x134], xmm0
movsd qword [ebp - 0x150], xmm0
push eax
push 1
sub esp, 8
mov ecx, esp
mov dword [ebp - 0xec], esp
push 0
call ebx
mov ebx, dword [0x101a70ec]
sub esp, 8
mov ecx, esp
mov byte [ebp - 4], 0xc
push 0x102371c8
call ebx
mov byte [ebp - 4], 1
mov ecx, dword [edi + 0xc0]
push 0x1022bb38
call esi
lea eax, [ebp - 0x16c]
push eax
lea eax, [ebp - 0x164]
push eax
push 1
sub esp, 8
mov ecx, esp
mov dword [ebp - 0xec], esp
push 0x10236c48
call ebx
sub esp, 8
mov byte [ebp - 4], 0xd
mov ecx, esp
push 0x102371c8
call ebx
mov byte [ebp - 4], 1
mov ecx, dword [edi + 0xc0]
push 0x1022bb38
call esi
mov eax, dword [ebp + 0x54]
cmp ax, 2
je 0x100c521d
test ax, ax
je 0x100c521d
cmp ax, 8
je 0x100c521d
movsd xmm3, qword [ebp - 0x174]
movsd xmm0, qword [ebp - 0x164]
subsd xmm3, qword [ebp - 0x134]
subsd xmm0, qword [ebp - 0x134]
jmp 0x100c525d
movsd xmm3, qword [ebp - 0x174]
movsd xmm0, qword [ebp - 0x16c]
addsd xmm3, qword [ebp - 0x17c]
addsd xmm0, qword [ebp - 0x164]
subsd xmm3, qword [ebp - 0x134]
subsd xmm0, qword [ebp - 0x134]
subsd xmm3, qword [ebp - 0x150]
subsd xmm0, qword [ebp - 0x150]
movsd qword [ebp - 0xf0], xmm0
movsd xmm0, qword [ebp - 0x10c]
comisd xmm3, xmm0
ja 0x100c5276
movaps xmm3, xmm0
mov ecx, dword [ebp + 0xc]
sub esp, 8
mov eax, dword [0x101a60f8]
movsd qword [esp], xmm3
push 0x10229b00
call eax
mov ecx, dword [ebp + 0xc]
mov ebx, dword [0x101a60e0]
push 0x10229b08
call ebx
mov ecx, dword [ebp + 0xc]
push 0x10229b10
call ebx
mov eax, dword [ebp + 0x58]
mov esi, dword [0x101a60f0]
mov ecx, dword [ebp + 0xc]
cmp eax, 3
jne 0x100c5350
push 0x10229b08
call esi
mov ecx, dword [ebp + 0xc]
push 0x10229b10
call dword [0x101a60e8]
mov ecx, dword [ebp + 0xc]
push 0x10229b10
call dword [0x101a6024]
test al, al
je 0x100c554f
movsd xmm0, qword [ebp - 0x16c]
addsd xmm0, qword [ebp - 0x164]
movsd xmm1, qword [ebp - 0x10c]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x100c5311
movsd qword [ebp - 0xf0], xmm1
mov eax, dword [ebp + 0x54]
mov ecx, dword [edi + 0xc0]
push eax
call dword [0x101a6dd4]
fadd qword [ebp - 0xf0]
mov ecx, dword [ebp + 0xc]
sub esp, 8
mov ebx, dword [0x101a60f8]
fstp qword [esp]
push 0x10229b10
call ebx
mov ecx, dword [ebp + 0xc]
push 0x10229b10
call dword [0x101a6168]
jmp 0x100c5555
cmp eax, 2
jne 0x100c53f1
push 0x10229b10
call esi
mov ecx, dword [ebp + 0xc]
push 0x10229b08
call dword [0x101a60e8]
cmp byte [ebp - 0xf8], 0
je 0x100c5385
mov ecx, dword [ebp + 0xc]
push 0x10229b08
call dword [0x101a6154]
movsd xmm0, qword [ebp - 0x150]
addsd xmm0, qword [ebp - 0x134]
movsd xmm1, qword [ebp - 0x10c]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x100c53af
movsd qword [ebp - 0xf0], xmm1
mov eax, dword [ebp + 0x54]
mov ecx, dword [edi + 0xc0]
push eax
call dword [0x101a6dd8]
fadd qword [ebp - 0xf0]
mov ecx, dword [ebp + 0xc]
sub esp, 8
fstp qword [esp]
push 0x10229b08
push 0x10229b08
call dword [0x101a615c]
mov ecx, dword [ebp + 0xc]
push 0x10229b08
call dword [0x101a6168]
jmp 0x100c554f
cmp eax, 1
jne 0x100c5466
push 0x10229b10
call esi
movsd xmm0, qword [ebp - 0x150]
addsd xmm0, qword [ebp - 0x134]
movsd xmm1, qword [ebp - 0x10c]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x100c5427
movsd qword [ebp - 0xf0], xmm1
mov eax, dword [ebp + 0x54]
mov ecx, dword [edi + 0xc0]
push eax
call dword [0x101a6dd8]
fadd qword [ebp - 0xf0]
mov ecx, dword [ebp + 0xc]
sub esp, 8
mov ebx, dword [0x101a60f8]
fstp qword [esp]
push 0x10229b08
call ebx
mov ecx, dword [ebp + 0xc]
push 0x10229b08
call dword [0x101a6168]
jmp 0x100c5555
mov esi, dword [0x101a60e8]
push 0x10229b08
call esi
mov ecx, dword [ebp + 0xc]
push 0x10229b10
call esi
cmp byte [ebp - 0xf8], 0
je 0x100c5494
mov ecx, dword [ebp + 0xc]
push 0x10229b08
call dword [0x101a6154]
movsd xmm0, qword [ebp - 0x150]
addsd xmm0, qword [ebp - 0x134]
movsd xmm1, qword [ebp - 0x10c]
ucomisd xmm0, xmm1
lahf
test ah, 0x44
jp 0x100c54be
movsd qword [ebp - 0xf0], xmm1
mov ebx, dword [ebp + 0x54]
mov ecx, dword [edi + 0xc0]
push ebx
call dword [0x101a6dd8]
fadd qword [ebp - 0xf0]
mov ecx, dword [ebp + 0xc]
sub esp, 8
mov esi, dword [0x101a615c]
fstp qword [esp]
push 0x10229b08
push 0x10229b08
call esi
mov ecx, dword [edi + 0xc0]
push ebx
call dword [0x101a6dd8]
fadd qword [ebp - 0xf0]
mov ecx, dword [ebp + 0xc]
push 0x10229b08
fstp qword [ebp - 0x158]
call dword [0x101a602c]
fsubr qword [ebp - 0x158]
sub esp, 8
mov ecx, dword [ebp + 0xc]
movsd xmm0, qword [ebp - 0x10c]
fstp qword [ebp - 0x158]
maxsd xmm0, qword [ebp - 0x158]
movsd qword [esp], xmm0
push 0x10229b10
push 0x10229b10
call esi
mov esi, dword [0x101a60f0]
mov ebx, dword [0x101a60f8]
movsd xmm0, qword [ebp - 0x12c]
sub esp, 8
mov ecx, dword [ebp + 0xc]
movsd qword [esp], xmm0
push 0x10229b48
call ebx
movsd xmm0, qword [ebp - 0x124]
sub esp, 8
mov ecx, dword [ebp + 0xc]
movsd qword [esp], xmm0
push 0x10229b50
call ebx
movsd xmm0, qword [ebp - 0x11c]
sub esp, 8
mov ecx, dword [ebp + 0xc]
movsd qword [esp], xmm0
push 0x10229b18
call ebx
movsd xmm0, qword [ebp - 0x114]
sub esp, 8
mov ecx, dword [ebp + 0xc]
movsd qword [esp], xmm0
push 0x10229c90
call ebx
movsd xmm0, qword [ebp - 0x148]
sub esp, 8
mov ecx, dword [ebp + 0xc]
movsd qword [esp], xmm0
push 0x10229ca8
call ebx
movsd xmm0, qword [ebp - 0x100]
sub esp, 8
mov ecx, dword [ebp + 0xc]
movsd qword [esp], xmm0
push 0x10229d38
call ebx
movsd xmm0, qword [ebp - 0x13c]
sub esp, 8
mov ecx, dword [ebp + 0xc]
movsd qword [esp], xmm0
push 0x10229d50
call ebx
mov eax, dword [edi]
lea ecx, [ebp - 0x15c]
push ecx
mov ecx, edi
call dword [eax + 0x2c]
push 0x1022b8f8
mov ebx, 1
mov byte [ebp - 4], 0xe
push eax
mov dword [ebp - 0xfc], ebx
call dword [0x101a70e0]
add esp, 8
test al, al
jne 0x100c5675
mov eax, dword [edi]
lea ecx, [ebp - 0x140]
push ecx
mov ecx, edi
call dword [eax + 0x2c]
push 0x1022c15c
mov ebx, 3
mov dword [ebp - 4], 0xf
push eax
mov dword [ebp - 0xfc], ebx
call dword [0x101a70e0]
add esp, 8
mov byte [ebp - 0xf1], 0
test al, al
je 0x100c567c
mov byte [ebp - 0xf1], 1
mov eax, dword [0x101a70d8]
test bl, 2
je 0x100c5696
lea ecx, [ebp - 0x140]
and ebx, 0xfffffffd
call eax
mov eax, dword [0x101a70d8]
mov dword [ebp - 4], 1
test bl, 1
je 0x100c56aa
lea ecx, [ebp - 0x15c]
call eax
cmp byte [ebp - 0xf1], 0
je 0x100c56d1
mov ecx, dword [ebp + 0xc]
push 0x10229c60
call esi
mov ecx, dword [ebp + 0xc]
push 0x10229c68
call esi
mov ecx, dword [ebp + 0xc]
push 0x10229c70
call esi
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0xe4]
push eax
call dword [0x101a614c]
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0x10
push ecx
mov ecx, dword [eax + 4]
call dword [0x101a60dc]
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x12
mov dword [ebp - 0xe4], vtable.DataMgmt::TaxFormDescPtr.0
call fcn.1001ceb0
mov eax, dword [edi]
lea ecx, [ebp - 0x140]
push ecx
mov ecx, edi
call dword [eax + 0x2c]
mov esi, dword [0x101a70e0]
push 0x1022b76c
push eax
mov byte [ebp - 4], 0x13
call esi
add esp, 8
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x140]
mov bl, al
call dword [0x101a70d8]
test bl, bl
je 0x100c589b
mov edx, dword [0x1022a4b0]
xor eax, eax
mov dword [ebp - 0xfc], eax
cmp dword [edx + 4], eax
jle 0x100c5f6b
xor esi, esi
cmp dword [esi + edx + 0x1c], 0
jle 0x100c5873
mov ebx, dword [0x101a70ec]
lea eax, [edx + 0x18]
sub esp, 8
add eax, esi
mov ecx, esp
mov dword [ebp - 0xec], esp
push eax
call ebx
lea eax, [ebp + 8]
mov byte [ebp - 4], 0x14
push eax
mov eax, dword [0x1022a4b0]
sub esp, 8
add eax, esi
mov dword [ebp - 0xe8], esp
mov ecx, esp
push eax
call ebx
sub esp, 0xc
mov byte [ebp - 4], 0x15
mov ecx, esp
push 0x1022b76c
call dword [0x101a7098]
mov byte [ebp - 4], 0x12
mov ecx, dword [edi + 0x40]
call dword [0x101a6120]
mov edx, dword [0x1022a4b0]
movzx eax, byte [esi + edx + 0x38]
push eax
sub esp, 8
lea eax, [edx + 0x20]
add eax, esi
mov dword [ebp - 0xec], esp
mov ecx, esp
push eax
call ebx
mov eax, dword [0x1022a4b0]
sub esp, 8
add eax, 0x18
mov byte [ebp - 4], 0x16
add eax, esi
mov ecx, esp
push eax
call ebx
push dword [ebp - 0xf8]
push dword [ebp + 0x58]
sub esp, 0x3c
mov edi, esp
mov dword [ebp - 0xe8], edi
push 2
lea esi, [edi + 0xc]
mov dword [edi], vtable.SmartPointers::CountedPtr_class_DataMgmt::TaxForm_.0
push esi
call fcn.101342cd
lea eax, [ebp + 0x14]
push eax
push esi
call fcn.1000f610
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x10]
mov dword [edi + 8], eax
push dword [ebp + 0x10]
call fcn.1000e770
lock inc dword [eax]
lea eax, [ebp + 0x14]
push eax
call fcn.101342e5
push esi
call fcn.101342e5
mov dword [edi], vtable.DataMgmt::TaxFormPtr.0
add esp, 0x1c
mov edi, dword [ebp - 0x104]
mov ecx, edi
mov byte [ebp - 4], 0x12
call fcn.100a95a0
mov edx, dword [0x1022a4b0]
mov eax, dword [ebp - 0xfc]
inc eax
mov dword [ebp - 0xfc], eax
cwde
mov esi, eax
shl esi, 4
sub esi, eax
mov eax, dword [ebp - 0xfc]
shl esi, 2
cmp dword [esi + edx + 4], 0
jg 0x100c5761
jmp 0x100c5f6b
mov eax, dword [edi]
lea ecx, [ebp - 0x140]
push ecx
mov ecx, edi
call dword [eax + 0x2c]
push 0x1022b8f8
push eax
mov byte [ebp - 4], 0x17
call esi
add esp, 8
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x140]
mov bl, al
call dword [0x101a70d8]
test bl, bl
je 0x100c5bf8
mov edx, dword [0x1022a4b0]
mov dword [ebp - 0xfc], 0
cmp dword [edx + 4], 0
jle 0x100c5f6b
xor ebx, ebx
nop
cmp dword [ebx + edx + 0xc], 0
jle 0x100c5bd0
cmp dword [ebx + edx + 0x1c], 0
jle 0x100c5bd0
mov esi, dword [0x101a70ec]
lea eax, [edx + 0x18]
sub esp, 8
add eax, ebx
mov ecx, esp
mov dword [ebp - 0xec], esp
push eax
call esi
lea eax, [ebp + 8]
mov byte [ebp - 4], 0x18
push eax
mov eax, dword [0x1022a4b0]
sub esp, 8
add eax, 8
mov dword [ebp - 0xe8], esp
add eax, ebx
mov ecx, esp
push eax
call esi
sub esp, 0xc
mov byte [ebp - 4], 0x19
mov ecx, esp
push 0x1022b8f8
call dword [0x101a7098]
mov byte [ebp - 4], 0x12
mov ecx, dword [edi + 0x40]
call dword [0x101a6120]
mov edx, dword [0x1022a4b0]
movzx eax, byte [ebx + edx + 0x38]
push eax
sub esp, 8
lea eax, [edx + 0x20]
add eax, ebx
mov dword [ebp - 0xec], esp
mov ecx, esp
push eax
call esi
mov eax, dword [0x1022a4b0]
sub esp, 8
add eax, 0x18
mov byte [ebp - 4], 0x1a
add eax, ebx
mov ecx, esp
push eax
call esi
push dword [ebp - 0xf8]
push dword [ebp + 0x58]
sub esp, 0x3c
mov edi, esp
mov dword [ebp - 0xe8], edi
push 2
lea esi, [edi + 0xc]
mov dword [edi], vtable.SmartPointers::CountedPtr_class_DataMgmt::TaxForm_.0
push esi
call fcn.101342cd
lea eax, [ebp + 0x14]
push eax
push esi
call fcn.1000f610
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x10]
mov dword [edi + 8], eax
push dword [ebp + 0x10]
call fcn.1000e770
lock inc dword [eax]
lea eax, [ebp + 0x14]
push eax
call fcn.101342e5
push esi
call fcn.101342e5
mov dword [edi], vtable.DataMgmt::TaxFormPtr.0
add esp, 0x1c
mov edi, dword [ebp - 0x104]
mov ecx, edi
mov byte [ebp - 4], 0x12
call fcn.100a95a0
mov eax, dword [0x1022a4b0]
add eax, 0x18
lea ecx, [ebp - 0x5c]
add eax, ebx
push eax
call dword [0x101a60c8]
mov ecx, dword [0x1022a4b0]
mov esi, dword [0x101a70e4]
push 0x10233948
lea ecx, [ebx + ecx]
call esi
test al, al
je 0x100c5bca
mov ecx, dword [0x1022a4b0]
push 0x10233960
lea ecx, [ebx + ecx]
call esi
test al, al
je 0x100c5bca
mov ecx, dword [0x1022a4b0]
push 0x10233970
lea ecx, [ebx + ecx]
call esi
test al, al
je 0x100c5bca
mov ecx, dword [0x1022a4b0]
push 0x10233988
lea ecx, [ebx + ecx]
call esi
test al, al
je 0x100c5bca
mov ecx, dword [0x1022a4b0]
push 0x10233998
lea ecx, [ebx + ecx]
call esi
test al, al
je 0x100c5bca
mov ecx, dword [0x1022a4b0]
push 0x10234498
lea ecx, [ebx + ecx]
call esi
test al, al
je 0x100c5bca
mov ecx, dword [0x1022a4b0]
push 0x10234218
lea ecx, [ebx + ecx]
call esi
test al, al
je 0x100c5bca
lea eax, [ebp - 0x12c]
push eax
lea ecx, [ebp - 0x5c]
call dword [0x101a60cc]
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x12c]
mov ebx, dword [0x101a60f0]
push eax
mov byte [ebp - 4], 0x1b
call ebx
mov esi, dword [0x101a70f0]
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 0x12
call esi
lea eax, [ebp - 0x124]
push eax
lea ecx, [ebp - 0x5c]
call dword [0x101a60cc]
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x124]
push eax
mov byte [ebp - 4], 0x1c
call dword [0x101a60e0]
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0x12
call esi
push 1
lea eax, [ebp - 0xa8]
push eax
lea ecx, [ebp - 0x5c]
call dword [0x101a6148]
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0x1d
push ecx
mov ecx, eax
call dword [0x101a60cc]
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x11c]
push eax
mov byte [ebp - 4], 0x1e
call ebx
lea ecx, [ebp - 0x11c]
call esi
mov ebx, dword [0x101a60c4]
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x12
call ebx
push 1
lea eax, [ebp - 0xa8]
push eax
lea ecx, [ebp - 0x5c]
call dword [0x101a6148]
lea ecx, [ebp - 0x114]
mov byte [ebp - 4], 0x1f
push ecx
mov ecx, eax
call dword [0x101a60cc]
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x114]
push eax
mov byte [ebp - 4], 0x20
call dword [0x101a60e0]
lea ecx, [ebp - 0x114]
call esi
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x12
call ebx
mov edx, dword [0x1022a4b0]
mov eax, dword [ebp - 0xfc]
inc eax
mov dword [ebp - 0xfc], eax
cwde
mov ebx, eax
shl ebx, 4
sub ebx, eax
shl ebx, 2
cmp dword [ebx + edx + 4], 0
jg 0x100c58f0
jmp 0x100c5f6b
mov eax, dword [edi]
lea ecx, [ebp - 0x140]
push ecx
mov ecx, edi
call dword [eax + 0x2c]
push 0x1022c15c
push eax
mov byte [ebp - 4], 0x21
call esi
add esp, 8
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x140]
mov bl, al
call dword [0x101a70d8]
test bl, bl
je 0x100c5f6b
mov edx, dword [0x1022a4b0]
mov dword [ebp - 0xfc], 0
cmp dword [edx + 4], 0
jle 0x100c5f6b
xor ebx, ebx
nop dword [eax + eax]
cmp dword [ebx + edx + 0x14], 0
jle 0x100c5f46
cmp dword [ebx + edx + 0x1c], 0
jle 0x100c5f46
mov esi, dword [0x101a70ec]
lea eax, [edx + 0x18]
sub esp, 8
add eax, ebx
mov ecx, esp
mov dword [ebp - 0xec], esp
push eax
call esi
lea eax, [ebp + 8]
mov byte [ebp - 4], 0x22
push eax
mov eax, dword [0x1022a4b0]
sub esp, 8
add eax, 0x10
mov dword [ebp - 0xe8], esp
add eax, ebx
mov ecx, esp
push eax
call esi
sub esp, 0xc
mov byte [ebp - 4], 0x23
mov ecx, esp
push 0x1022c15c
call dword [0x101a7098]
mov byte [ebp - 4], 0x12
mov ecx, dword [edi + 0x40]
call dword [0x101a6120]
mov edx, dword [0x1022a4b0]
movzx eax, byte [ebx + edx + 0x38]
push eax
sub esp, 8
lea eax, [edx + 0x20]
add eax, ebx
mov dword [ebp - 0xec], esp
mov ecx, esp
push eax
call esi
mov eax, dword [0x1022a4b0]
sub esp, 8
add eax, 0x18
mov byte [ebp - 4], 0x24
add eax, ebx
mov ecx, esp
push eax
call esi
push dword [ebp - 0xf8]
push dword [ebp + 0x58]
sub esp, 0x3c
mov edi, esp
mov dword [ebp - 0xe8], edi
push 2
lea esi, [edi + 0xc]
mov dword [edi], vtable.SmartPointers::CountedPtr_class_DataMgmt::TaxForm_.0
push esi
call fcn.101342cd
lea eax, [ebp + 0x14]
push eax
push esi
call fcn.1000f610
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x10]
mov dword [edi + 8], eax
push dword [ebp + 0x10]
call fcn.1000e770
lock inc dword [eax]
lea eax, [ebp + 0x14]
push eax
call fcn.101342e5
push esi
call fcn.101342e5
mov dword [edi], vtable.DataMgmt::TaxFormPtr.0
add esp, 0x1c
mov edi, dword [ebp - 0x104]
mov ecx, edi
mov byte [ebp - 4], 0x12
call fcn.100a95a0
mov eax, dword [0x1022a4b0]
add eax, 0x18
lea ecx, [ebp - 0x5c]
add eax, ebx
push eax
call dword [0x101a60c8]
mov ecx, dword [0x1022a4b0]
push 0x10233988
lea ecx, [ebx + ecx]
call dword [0x101a70e4]
test al, al
je 0x100c5f40
mov ebx, dword [0x101a60cc]
lea eax, [ebp - 0x12c]
push eax
lea ecx, [ebp - 0x5c]
call ebx
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x12c]
mov esi, dword [0x101a60f0]
push eax
mov byte [ebp - 4], 0x25
call esi
lea ecx, [ebp - 0x12c]
mov byte [ebp - 4], 0x12
call dword [0x101a70f0]
lea eax, [ebp - 0x124]
push eax
lea ecx, [ebp - 0x5c]
call ebx
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x124]
mov ebx, dword [0x101a60e0]
push eax
mov byte [ebp - 4], 0x26
call ebx
lea ecx, [ebp - 0x124]
mov byte [ebp - 4], 0x12
call dword [0x101a70f0]
push 1
lea eax, [ebp - 0xa8]
push eax
lea ecx, [ebp - 0x5c]
call dword [0x101a6148]
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0x27
push ecx
mov ecx, eax
call dword [0x101a60cc]
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x11c]
push eax
mov byte [ebp - 4], 0x28
call esi
lea ecx, [ebp - 0x11c]
call dword [0x101a70f0]
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x12
call dword [0x101a60c4]
push 1
lea eax, [ebp - 0xa8]
push eax
lea ecx, [ebp - 0x5c]
call dword [0x101a6148]
lea ecx, [ebp - 0x114]
mov byte [ebp - 4], 0x29
push ecx
mov ecx, eax
call dword [0x101a60cc]
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x114]
push eax
mov byte [ebp - 4], 0x2a
call ebx
lea ecx, [ebp - 0x114]
call dword [0x101a70f0]
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x12
call dword [0x101a60c4]
push 2
lea eax, [ebp - 0xa8]
push eax
lea ecx, [ebp - 0x5c]
call dword [0x101a6148]
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x148]
push ecx
mov ecx, eax
call dword [0x101a60cc]
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x148]
push eax
mov byte [ebp - 4], 0x2c
call esi
mov esi, dword [0x101a70f0]
lea ecx, [ebp - 0x148]
call esi
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x12
call dword [0x101a60c4]
push 2
lea eax, [ebp - 0xa8]
push eax
lea ecx, [ebp - 0x5c]
call dword [0x101a6148]
lea ecx, [ebp - 0x158]
mov byte [ebp - 4], 0x2d
push ecx
mov ecx, eax
call dword [0x101a60cc]
mov ecx, dword [ebp + 0xc]
lea eax, [ebp - 0x158]
push eax
mov byte [ebp - 4], 0x2e
call ebx
lea ecx, [ebp - 0x158]
call esi
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x12
call dword [0x101a60c4]
mov edx, dword [0x1022a4b0]
mov ebx, dword [ebp - 0xfc]
inc ebx
movsx eax, bx
mov dword [ebp - 0xfc], ebx
mov ebx, eax
shl ebx, 4
sub ebx, eax
shl ebx, 2
cmp dword [ebx + edx + 4], 0
jg 0x100c5c50
mov ebx, dword [0x101a70ec]
push 2
sub esp, 8
mov ecx, esp
mov dword [ebp - 0xec], esp
push 0x10229b20
call ebx
sub esp, 8
mov byte [ebp - 4], 0x2f
mov ecx, esp
push 0x10229b18
call ebx
push dword [ebp - 0xf8]
push dword [ebp + 0x58]
sub esp, 0x3c
mov edi, esp
mov dword [ebp - 0xe8], edi
push 2
lea esi, [edi + 0xc]
mov dword [edi], vtable.SmartPointers::CountedPtr_class_DataMgmt::TaxForm_.0
push esi
call fcn.101342cd
lea eax, [ebp + 0x14]
push eax
push esi
call fcn.1000f610
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x10]
push eax
mov dword [edi + 8], eax
call fcn.1000e770
lock inc dword [eax]
lea eax, [ebp + 0x14]
push eax
call fcn.101342e5
push esi
call fcn.101342e5
mov ebx, dword [ebp - 0x104]
add esp, 0x1c
mov dword [edi], vtable.DataMgmt::TaxFormPtr.0
mov ecx, ebx
mov byte [ebp - 4], 0x12
call fcn.100a95a0
mov esi, dword [0x101a70ec]
push 1
sub esp, 8
mov ecx, esp
mov dword [ebp - 0xec], esp
push 0x10229c98
call esi
sub esp, 8
mov byte [ebp - 4], 0x30
mov ecx, esp
push 0x10229c90
call esi
push dword [ebp - 0xf8]
push dword [ebp + 0x58]
sub esp, 0x3c
mov edi, esp
mov dword [ebp - 0xe8], edi
push 2
lea esi, [edi + 0xc]
mov dword [edi], vtable.SmartPointers::CountedPtr_class_DataMgmt::TaxForm_.0
push esi
call fcn.101342cd
lea eax, [ebp + 0x14]
push eax
push esi
call fcn.1000f610
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x10]
push eax
mov dword [edi + 8], eax
call fcn.1000e770
lock inc dword [eax]
lea eax, [ebp + 0x14]
push eax
call fcn.101342e5
push esi
call fcn.101342e5
add esp, 0x1c
mov dword [edi], vtable.DataMgmt::TaxFormPtr.0
mov ecx, ebx
mov byte [ebp - 4], 0x12
call fcn.100a95a0
mov esi, dword [0x101a70ec]
push 1
sub esp, 8
mov ecx, esp
mov dword [ebp - 0xec], esp
push 0x10229cb0
call esi
sub esp, 8
mov byte [ebp - 4], 0x31
mov ecx, esp
push 0x10229ca8
call esi
push dword [ebp - 0xf8]
push dword [ebp + 0x58]
sub esp, 0x3c
mov edi, esp
mov dword [ebp - 0xe8], edi
push 2
lea esi, [edi + 0xc]
mov dword [edi], vtable.SmartPointers::CountedPtr_class_DataMgmt::TaxForm_.0
push esi
call fcn.101342cd
lea eax, [ebp + 0x14]
push eax
push esi
call fcn.1000f610
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x10]
push eax
mov dword [edi + 8], eax
call fcn.1000e770
lock inc dword [eax]
lea eax, [ebp + 0x14]
push eax
call fcn.101342e5
push esi
call fcn.101342e5
add esp, 0x1c
mov dword [edi], vtable.DataMgmt::TaxFormPtr.0
mov ecx, ebx
mov byte [ebp - 4], 0x12
call fcn.100a95a0
mov esi, dword [0x101a70ec]
push 1
sub esp, 8
mov ecx, esp
mov dword [ebp - 0xec], esp
push 0x10229d40
call esi
sub esp, 8
mov byte [ebp - 4], 0x32
mov ecx, esp
push 0x10229d38
call esi
push dword [ebp - 0xf8]
push dword [ebp + 0x58]
sub esp, 0x3c
mov edi, esp
mov dword [ebp - 0xe8], edi
push 2
lea esi, [edi + 0xc]
mov dword [edi], vtable.SmartPointers::CountedPtr_class_DataMgmt::TaxForm_.0
push esi
call fcn.101342cd
lea eax, [ebp + 0x14]
push eax
push esi
call fcn.1000f610
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x10]
push eax
mov dword [edi + 8], eax
call fcn.1000e770
lock inc dword [eax]
lea eax, [ebp + 0x14]
push eax
call fcn.101342e5
push esi
call fcn.101342e5
add esp, 0x1c
mov dword [edi], vtable.DataMgmt::TaxFormPtr.0
mov ecx, ebx
mov byte [ebp - 4], 0x12
call fcn.100a95a0
mov esi, dword [0x101a70ec]
push 1
sub esp, 8
mov ecx, esp
mov dword [ebp - 0xec], esp
push 0x10229d58
call esi
sub esp, 8
mov byte [ebp - 4], 0x33
mov ecx, esp
push 0x10229d50
call esi
push dword [ebp - 0xf8]
push dword [ebp + 0x58]
sub esp, 0x3c
mov edi, esp
mov dword [ebp - 0xe8], edi
push 2
lea esi, [edi + 0xc]
mov dword [edi], vtable.SmartPointers::CountedPtr_class_DataMgmt::TaxForm_.0
push esi
call fcn.101342cd
lea eax, [ebp + 0x14]
push eax
push esi
call fcn.1000f610
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x10]
push eax
mov dword [edi + 8], eax
call fcn.1000e770
lock inc dword [eax]
lea eax, [ebp + 0x14]
push eax
call fcn.101342e5
push esi
call fcn.101342e5
add esp, 0x1c
mov dword [edi], vtable.DataMgmt::TaxFormPtr.0
mov ecx, ebx
mov byte [ebp - 4], 0x12
call fcn.100a95a0
movd xmm0, dword [ebp + 0x58]
sub esp, 8
mov ecx, dword [ebp + 0xc]
mov eax, dword [0x101a60f8]
cvtdq2pd xmm0, xmm0
movsd qword [esp], xmm0
push 0x10229a68
call eax
lea ecx, [ebp - 0x5c]
call dword [0x101a60c4]
lea ecx, [ebp + 8]
mov dword [ebp + 8], vtable.SmartPointers::CountedPtr_class_DataMgmt::TaxForm_.0
call fcn.10023320
lea eax, [ebp + 0x14]
push eax
call fcn.101342d3
add esp, 4
lea ecx, [ebp + 0x48]
call dword [0x101a70d8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10134812
mov esp, ebp
pop ebp
ret 0x58