Function at 0x44de80
Capabilities:
Inspect section memory permissions
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x4c
mov eax, ecx
mov dword [esp + 0x1c], edx
push ebx
mov dword [esp + 0x10], eax
xor ecx, ecx
push esi
mov edx, dword [eax]
xor esi, esi
mov eax, 0xa4
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x24]
xor ebx, ebx
mov dword [esp + 0x34], eax
mov eax, dword [ebp + 0x14]
push edi
xor edi, edi
mov dword [esp + 0x48], ecx
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x14], edi
mov dword [esp + 0x34], edx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x30], ebx
mov dword [eax + 0x1c], 0xffffffff
test esi, esi
je 0x44df80
test byte [ecx + 0x18], 6
je 0x44deed
mov dword [esp + 0x28], ebx
jmp 0x44df80
mov ecx, dword [edx + 0x14]
xor ebx, ebx
mov dword [esp + 0x40], ecx
test ecx, ecx
jle 0x44df44
mov ecx, dword [edx + 0x10]
mov eax, ecx
mov dword [esp + 0x44], ecx
mov edx, dword [eax]
mov edi, esi
sub edi, edx
nop dword [eax]
movzx eax, byte [edx]
movzx esi, byte [edi + edx]
cmp eax, esi
jne 0x44e025
test eax, eax
jne 0x44e037
mov edx, dword [esp + 0x34]
mov eax, ebx
mov esi, dword [esp + 0x28]
add eax, eax
mov ecx, dword [edx + 0x10]
mov eax, dword [ecx + eax*8 + 0xc]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x30], eax
xor edi, edi
cmp ebx, ecx
jne 0x44df7b
mov edx, str.main
sub esi, edx
nop
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x44e05e
test ecx, ecx
jne 0x44e074
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x10]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x28], eax
xor ebx, ebx
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 4]
mov esi, dword [ebp + 8]
mov dword [esp + 0x4c], eax
test eax, eax
je 0x44e264
xor edx, edx
lea ebx, [eax + 8]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x24], ebx
cmp dword [eax], edx
jle 0x44e239
nop word [eax + eax]
mov eax, dword [ebx + 0x14]
mov ecx, dword [ebx + 0x10]
mov dword [esp + 0x44], ecx
test eax, eax
je 0x44e0a9
test dword [eax + 4], 0x800
je 0x44e0a9
mov ebx, dword [eax + 0x1c]
xor esi, esi
mov dword [esp + 0x40], 0
cmp dword [ebx], esi
jle 0x44e09a
lea edi, [ebx + 4]
push dword [esp + 0x28]
mov edx, dword [ebp + 0xc]
mov ecx, edi
push dword [ebp + 8]
call fcn.0044dd20
add esp, 8
test eax, eax
je 0x44e07a
mov eax, dword [esp + 0x24]
inc dword [esp + 0x14]
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x1c], 2
mov word [eax + 0x20], si
mov eax, 1
mov dword [esp + 0x40], eax
jmp 0x44e07e
movzx ecx, byte [eax + 0x4e4590]
movzx eax, byte [esi + 0x4e4590]
sub ecx, eax
jne 0x44e03d
inc edx
jmp 0x44df10
mov eax, dword [esp + 0x44]
inc ebx
mov ecx, dword [esp + 0x40]
add eax, 0x10
mov esi, dword [esp + 0x28]
mov dword [esp + 0x44], eax
cmp ebx, ecx
jge 0x44df42
jmp 0x44df03
movzx eax, byte [eax + 0x4e4590]
movzx ecx, byte [ecx + 0x4e4590]
sub ecx, eax
jne 0x44df7b
inc edx
jmp 0x44df50
mov eax, dword [esp + 0x40]
inc esi
add edi, 0x14
cmp esi, dword [ebx]
jl 0x44dfe7
mov edx, dword [esp + 0x2c]
test eax, eax
jne 0x44e2e2
mov ecx, dword [esp + 0x44]
mov esi, dword [ebp + 8]
mov ebx, dword [esp + 0x24]
test esi, esi
je 0x44e21a
cmp dword [esp + 0x28], 0
je 0x44e0bd
mov eax, dword [esp + 0x30]
cmp dword [ecx + 0x48], eax
jne 0x44e21a
test esi, esi
je 0x44e12c
mov edi, dword [ebx + 0xc]
mov edx, edi
test edi, edi
jne 0x44e0cc
mov edx, dword [ecx]
sub esi, edx
nop
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x44e10d
test ecx, ecx
jne 0x44e123
mov eax, dword [esp + 0x18]
cmp byte [eax + 0xcc], 2
jb 0x44e12c
test edi, edi
je 0x44e12c
mov eax, dword [eax + 0x114]
test eax, eax
je 0x44e12c
mov ecx, dword [ebp + 0x14]
add ecx, 0x2c
cmp dword [eax], ecx
je 0x44e126
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x44e100
jmp 0x44e12c
movzx eax, byte [eax + 0x4e4590]
movzx ecx, byte [ecx + 0x4e4590]
sub ecx, eax
jne 0x44e216
inc edx
jmp 0x44e0d0
mov dword [eax], 0
mov ecx, dword [esp + 0x1c]
mov eax, ecx
inc ecx
mov dword [esp + 0x1c], ecx
test eax, eax
jne 0x44e13f
mov dword [esp + 0x20], ebx
mov esi, dword [ebp + 0xc]
mov ecx, esi
call fcn.0041adf0
mov cl, al
xor ebx, ebx
mov eax, dword [esp + 0x44]
mov byte [esp + 0x13], cl
mov edi, dword [eax + 4]
movsx eax, word [eax + 0x2a]
mov dword [esp + 0x40], eax
test eax, eax
jle 0x44e212
nop dword [eax + eax]
cmp byte [edi + 0xf], cl
jne 0x44e206
mov edx, dword [edi]
sub esi, edx
nop dword [eax]
movzx eax, byte [edx]
movzx ecx, byte [esi + edx]
cmp eax, ecx
jne 0x44e1e6
test eax, eax
jne 0x44e1f8
cmp dword [esp + 0x14], 1
jne 0x44e1b1
mov eax, dword [esp + 0x24]
mov esi, dword [ebp + 0xc]
test byte [eax + 0x24], 4
jne 0x44e1fe
mov ecx, dword [eax + 0x34]
mov edx, esi
call fcn.0044dcb0
test eax, eax
jne 0x44e1fe
mov eax, dword [esp + 0x24]
mov edi, dword [esp + 0x14]
mov dword [esp + 0x20], eax
inc edi
mov eax, dword [esp + 0x44]
mov dword [esp + 0x14], edi
movsx eax, word [eax + 0x28]
cmp ebx, eax
jne 0x44e2cb
mov ecx, dword [ebp + 0x14]
or eax, 0xffffffff
mov ebx, dword [esp + 0x24]
mov edx, dword [esp + 0x2c]
mov word [ecx + 0x20], ax
jmp 0x44e21e
movzx ecx, byte [ecx + 0x4e4590]
movzx eax, byte [eax + 0x4e4590]
sub eax, ecx
jne 0x44e1fb
inc edx
jmp 0x44e180
mov esi, dword [ebp + 0xc]
mov eax, dword [esp + 0x40]
mov cl, byte [esp + 0x13]
inc ebx
add edi, 0x14
cmp ebx, eax
jl 0x44e170
mov ebx, dword [esp + 0x24]
mov edx, dword [esp + 0x2c]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x4c]
inc edx
mov esi, dword [ebp + 8]
add ebx, 0x48
mov dword [esp + 0x2c], edx
mov dword [esp + 0x24], ebx
cmp edx, dword [eax]
jl 0x44dfb0
mov ebx, dword [esp + 0x20]
test ebx, ebx
je 0x44e264
mov ecx, dword [ebp + 0x14]
mov eax, dword [ebx + 0x2c]
mov dword [ecx + 0x1c], eax
mov eax, dword [ebx + 0x10]
mov dword [ecx + 0x2c], eax
test byte [ebx + 0x24], 8
je 0x44e25d
or dword [ecx + 4], 0x100000
mov eax, dword [eax + 0x48]
mov dword [esp + 0x30], eax
cmp dword [esp + 0x28], 0
mov eax, dword [esp + 0x1c]
jne 0x44e590
test esi, esi
je 0x44e590
test eax, eax
jne 0x44e590
mov eax, dword [esp + 0x18]
xor ebx, ebx
mov dword [esp + 0x2c], ebx
cmp dword [eax + 0x78], ebx
je 0x44e338
movzx edi, byte [eax + 0x94]
cmp edi, 0x7e
je 0x44e303
mov edx, 0x4e9a3c
sub esi, edx
nop dword [eax]
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x44e2eb
test ecx, ecx
jne 0x44e2fd
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x1c], 1
jmp 0x44e32d
mov ecx, dword [ebp + 0x14]
mov edx, dword [esp + 0x2c]
movsx eax, bx
mov ebx, dword [esp + 0x24]
mov word [ecx + 0x20], ax
jmp 0x44e21e
mov ebx, dword [esp + 0x24]
jmp 0x44e21a
movzx eax, byte [eax + 0x4e4590]
movzx ecx, byte [ecx + 0x4e4590]
sub ecx, eax
jne 0x44e300
inc edx
jmp 0x44e2b0
mov esi, dword [ebp + 8]
cmp edi, 0x7d
je 0x44e338
mov edx, 0x4e9a40
sub esi, edx
nop
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x44e3f7
test ecx, ecx
jne 0x44e40d
mov eax, dword [ebp + 0x14]
mov dword [eax + 0x1c], ebx
mov ebx, dword [esp + 0x18]
mov ebx, dword [ebx + 0x78]
mov dword [esp + 0x2c], ebx
mov eax, dword [ebp + 0x10]
test dword [eax + 0x18], 0x200
je 0x44e380
mov edi, dword [eax + 8]
test edi, edi
je 0x44e380
mov esi, dword [ebp + 8]
mov edx, str.excluded
sub esi, edx
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x44e413
test ecx, ecx
jne 0x44e429
mov eax, dword [edi + 0x14]
mov ebx, dword [eax + 0x18]
mov eax, dword [ebp + 0x14]
mov dword [esp + 0x2c], ebx
mov dword [eax + 0x1c], 2
test ebx, ebx
je 0x44e584
mov ecx, dword [ebp + 0xc]
call fcn.0041adf0
mov ecx, dword [ebx + 0x48]
xor esi, esi
mov ebx, dword [ebx + 4]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x2c]
mov byte [esp + 0x13], al
mov dword [esp + 0x1c], 1
movsx edi, word [ecx + 0x2a]
mov dword [esp + 0x44], edi
test edi, edi
jle 0x44e458
nop dword [eax]
cmp byte [ebx + 0xf], al
jne 0x44e44c
mov edi, dword [ebp + 0xc]
mov edx, dword [ebx]
sub edi, edx
movzx ecx, byte [edx]
movzx eax, byte [edi + edx]
cmp ecx, eax
jne 0x44e42f
test ecx, ecx
jne 0x44e441
mov ebx, dword [esp + 0x2c]
mov edi, dword [esp + 0x44]
movsx eax, word [ebx + 0x28]
cmp esi, eax
mov eax, 0xffffffff
cmove esi, eax
jmp 0x44e45c
movzx eax, byte [eax + 0x4e4590]
movzx ecx, byte [ecx + 0x4e4590]
sub ecx, eax
jne 0x44e338
inc edx
jmp 0x44e310
movzx eax, byte [eax + 0x4e4590]
movzx ecx, byte [ecx + 0x4e4590]
sub ecx, eax
jne 0x44e380
inc edx
jmp 0x44e355
movzx eax, byte [eax + 0x4e4590]
movzx ecx, byte [ecx + 0x4e4590]
sub ecx, eax
jne 0x44e444
inc edx
jmp 0x44e3d0
mov edi, dword [esp + 0x44]
mov al, byte [esp + 0x13]
inc esi
add ebx, 0x14
cmp esi, edi
jl 0x44e3c0
mov ebx, dword [esp + 0x2c]
cmp esi, edi
jl 0x44e483
mov ecx, dword [ebp + 0xc]
call fcn.00452d70
test eax, eax
je 0x44e47b
test dword [ebx + 0x24], 0x200
mov eax, 0xffffffff
cmove esi, eax
cmp esi, edi
jge 0x44e584
mov edx, dword [ebp + 0x14]
mov edi, dword [esp + 0x14]
inc edi
mov dword [esp + 0x14], edi
mov eax, dword [edx + 0x1c]
cmp eax, 2
jne 0x44e4ef
mov eax, dword [esp + 0x18]
cmp byte [eax + 0xcc], 2
jb 0x44e4b8
mov word [edx + 0x20], si
mov dword [edx + 0x2c], ebx
mov dword [esp + 0x38], 0xa4
jmp 0x44e588
mov edx, esi
mov ecx, ebx
call fcn.00460670
mov esi, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov ebx, dword [esp + 0x20]
movsx ecx, ax
mov eax, dword [esi + 8]
mov dword [esp + 0x38], 0xad
add ecx, dword [eax + 0x18]
or dword [edx + 4], 0x400000
mov eax, dword [esp + 0x1c]
mov dword [edx + 0x1c], ecx
jmp 0x44e593
test esi, esi
jns 0x44e50b
mov byte [edx + 1], 0x44
mov dword [edx + 0x2c], ebx
mov word [edx + 0x20], si
mov dword [esp + 0x38], 0x4d
jmp 0x44e588
test eax, eax
jne 0x44e556
cmp esi, 0x20
jl 0x44e532
mov ecx, dword [esp + 0x18]
or eax, 0xffffffff
mov dword [esp + 0x38], 0x4d
or dword [ecx + 0x8c], eax
mov dword [edx + 0x2c], ebx
mov word [edx + 0x20], si
jmp 0x44e588
mov ecx, esi
mov dword [esp + 0x38], 0x4d
mov eax, 1
shl eax, cl
mov ecx, dword [esp + 0x18]
or dword [ecx + 0x8c], eax
mov dword [edx + 0x2c], ebx
mov word [edx + 0x20], si
jmp 0x44e588
cmp esi, 0x20
jl 0x44e560
or eax, 0xffffffff
jmp 0x44e569
mov eax, 1
mov ecx, esi
shl eax, cl
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x38], 0x4d
or dword [ecx + 0x90], eax
mov dword [edx + 0x2c], ebx
mov word [edx + 0x20], si
jmp 0x44e588
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
mov esi, dword [ebp + 0x10]
test edi, edi
jne 0x44e5d9
cmp eax, 1
jne 0x44e5d9
test ebx, ebx
je 0x44e5d9
test byte [esi + 0x18], 0x28
mov esi, dword [ebp + 0xc]
jne 0x44e5dc
mov ecx, esi
call fcn.00452d70
test eax, eax
je 0x44e5dc
mov eax, dword [ebx + 0x10]
test dword [eax + 0x24], 0x200
jne 0x44e5dc
mov eax, dword [ebp + 0x14]
mov edi, 1
or ecx, 0xffffffff
mov dword [esp + 0x14], edi
mov word [eax + 0x20], cx
mov byte [eax + 1], 0x44
jmp 0x44e5dc
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x10]
test byte [ebx + 0x18], 0x80
je 0x44e678
test edi, edi
jne 0x44e858
mov edx, dword [ebp + 8]
test edx, edx
jne 0x44e683
mov ecx, dword [ebx + 8]
mov dword [esp + 0x44], edx
mov eax, dword [ecx]
mov dword [esp + 0x4c], eax
test eax, eax
jle 0x44e680
lea ebx, [ecx + 0x10]
test byte [ebx], 3
mov edi, dword [ebx - 8]
jne 0x44e64e
test edi, edi
jne 0x44e624
mov ecx, esi
neg ecx
sbb ecx, ecx
jmp 0x44e64a
test esi, esi
je 0x44e64e
mov edx, edi
sub esi, edi
nop dword [eax]
movzx ecx, byte [edx]
movzx eax, byte [esi + edx]
cmp ecx, eax
jne 0x44e663
test ecx, ecx
jne 0x44e675
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x4c]
mov esi, dword [ebp + 0xc]
test ecx, ecx
je 0x44e69e
inc edx
add ebx, 0x14
mov dword [esp + 0x44], edx
cmp edx, eax
jl 0x44e610
mov edi, dword [esp + 0x14]
mov ebx, dword [ebp + 0x10]
jmp 0x44e680
movzx eax, byte [eax + 0x4e4590]
movzx ecx, byte [ecx + 0x4e4590]
sub ecx, eax
jne 0x44e63f
inc edx
jmp 0x44e630
test edi, edi
jne 0x44e858
mov edx, dword [ebp + 8]
mov ebx, dword [ebx + 0xc]
inc dword [esp + 0x48]
mov dword [ebp + 0x10], ebx
test ebx, ebx
je 0x44e790
mov ebx, dword [esp + 0x20]
jmp 0x44df7d
mov ebx, dword [ebp + 0x10]
lea eax, [edx + edx*4]
mov esi, dword [ebx + 8]
mov ecx, dword [ebx + 0x18]
mov eax, dword [esi + eax*4 + 4]
test cl, 1
jne 0x44e6d7
test byte [eax + 4], 0x10
je 0x44e6d7
push edi
push str.misuse_of_aliased_aggregate__s
push dword [esp + 0x20]
call fcn.0041abf0
add esp, 0xc
mov eax, 2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test dword [eax + 4], 0x8000
je 0x44e6f8
test ecx, 0x4000
je 0x44e6f0
mov ecx, dword [esp + 0x3c]
cmp ebx, ecx
je 0x44e6f8
push edi
push str.misuse_of_aliased_window_function__s
jmp 0x44e6bf
mov cl, byte [eax]
cmp cl, 0xad
jne 0x44e702
mov cl, byte [eax + 2]
cmp cl, 0xae
jne 0x44e70c
mov eax, dword [eax + 0x14]
jmp 0x44e717
cmp cl, 0x88
jne 0x44e73b
mov eax, dword [eax + 0x14]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax]
cmp eax, 1
je 0x44e73b
push str.row_value_misused
push dword [esp + 0x1c]
call fcn.0041abf0
add esp, 8
mov eax, 2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x48]
mov ebx, dword [ebp + 0x14]
push ecx
push 0x4e1310
push ebx
push edx
mov edx, esi
mov esi, dword [esp + 0x28]
mov ecx, esi
call fcn.0044db80
add esp, 0x10
cmp byte [esi + 0xcc], 2
jb 0x44e996
mov eax, dword [esi + 0x114]
test eax, eax
je 0x44e996
cmp dword [eax], ebx
je 0x44e785
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x44e775
jmp 0x44e996
mov dword [eax], 0
jmp 0x44e996
test edx, edx
jne 0x44e860
mov eax, dword [ebp + 0x14]
mov ebx, dword [eax + 4]
test bl, 0x40
je 0x44e7f7
mov eax, dword [esp + 0x34]
cmp byte [eax + 0xa5], dl
jne 0x44e82f
mov ecx, dword [esp + 0x3c]
test dword [ecx + 0x18], 0x10000
je 0x44e822
mov ecx, dword [eax + 0x20]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x54], eax
mov eax, ecx
and eax, 0x10000001
mov dword [esp + 0x4c], edx
cmp eax, 1
jne 0x44e7e9
test edx, edx
jne 0x44e7e9
mov eax, ecx
and eax, 0x40000000
or eax, edx
jne 0x44e82f
and ecx, 0x20000000
or ecx, 0
jne 0x44e82f
mov eax, dword [ebp + 0x14]
test ebx, 0x4000000
jne 0x44e860
mov ecx, dword [eax + 8]
call fcn.00452760
test eax, eax
je 0x44e85d
mov ecx, dword [ebp + 0x14]
or ebx, eax
mov eax, 1
mov byte [ecx], 0xa7
mov dword [ecx + 4], ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [eax + 0x20]
and eax, 0x40000000
or eax, 0
je 0x44e7f4
push esi
push str.double_quoted_string_literal:___w_
push 0x1c
call fcn.00419f50
mov eax, dword [ebp + 0x14]
add esp, 0xc
mov byte [eax], 0x73
mov dword [eax + 0x2c], 0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp edi, 1
je 0x44e8c8
mov edx, dword [ebp + 8]
test edi, edi
mov ecx, str.ambiguous_column_name
mov eax, str.no_such_column
cmovne eax, ecx
mov ecx, dword [esp + 0x28]
push esi
test ecx, ecx
je 0x44e88e
push edx
push ecx
push eax
push str._s:__s._s._s
push dword [esp + 0x2c]
call fcn.0041abf0
add esp, 0x18
jmp 0x44e8b9
test edx, edx
je 0x44e8a7
push edx
push eax
push str._s:__s._s
push dword [esp + 0x28]
call fcn.0041abf0
add esp, 0x14
jmp 0x44e8b9
push eax
push str._s:__s
push dword [esp + 0x24]
call fcn.0041abf0
add esp, 0x10
mov eax, dword [esp + 0x18]
mov byte [eax + 0x11], 1
mov eax, dword [esp + 0x3c]
inc dword [eax + 0x14]
mov ebx, dword [ebp + 0x14]
movzx eax, word [ebx + 0x20]
test ax, ax
js 0x44e94e
cmp dword [esp + 0x20], 0
je 0x44e94e
mov edx, dword [ebx + 0x2c]
movsx esi, ax
test byte [edx + 0x24], 0x60
je 0x44e924
mov eax, dword [edx + 4]
lea ecx, [esi + esi*4]
test byte [eax + ecx*4 + 0x10], 0x60
je 0x44e924
movzx eax, word [edx + 0x2a]
cmp ax, 0x40
jl 0x44e906
or ecx, 0xffffffff
or edx, 0xffffffff
jmp 0x44e944
xor ecx, ecx
cwde
xor edx, edx
bts ecx, eax
cmp eax, 0x20
cmovae edx, ecx
xor ecx, edx
cmp eax, 0x40
cmovae edx, ecx
add ecx, 0xffffffff
adc edx, 0xffffffff
jmp 0x44e944
cmp esi, 0x40
mov eax, 0x3f
cmovge esi, eax
xor ecx, ecx
xor edx, edx
bts ecx, esi
cmp esi, 0x20
cmovae edx, ecx
xor ecx, edx
cmp esi, 0x40
cmovae edx, ecx
mov eax, dword [esp + 0x20]
or dword [eax + 0x38], ecx
or dword [eax + 0x3c], edx
mov edx, dword [ebx + 0xc]
mov esi, dword [esp + 0x34]
test edx, edx
je 0x44e960
mov ecx, esi
call fcn.00451450
mov edx, dword [ebx + 0x10]
mov dword [ebx + 0xc], 0
test edx, edx
je 0x44e975
mov ecx, esi
call fcn.00451450
mov eax, dword [esp + 0x38]
or dword [ebx + 4], 0x800000
mov dword [ebx + 0x10], 0
mov byte [ebx], al
cmp edi, 1
jne 0x44e6cb
mov esi, dword [esp + 0x18]
test dword [ebx + 4], 0x400000
jne 0x44e9b5
mov eax, dword [ebp + 0x10]
mov edx, ebx
mov ecx, esi
push dword [eax + 4]
push dword [esp + 0x34]
call fcn.0045ea00
add esp, 8
mov ecx, dword [esp + 0x3c]
mov eax, dword [ebp + 0x10]
inc dword [ecx + 0x10]
cmp ecx, eax
je 0x44e9cd
mov ecx, dword [ecx + 0xc]
inc dword [ecx + 0x10]
cmp ecx, eax
jne 0x44e9c3
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret