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

Disassembly:
sub esp, 0xdc
mov eax, dword [0x4ef7d0]
xor eax, esp
mov dword [esp + 0xd8], eax
push ebx
push ebp
mov ebp, dword [esp + 0xe8]
push esi
mov esi, ecx
cmp dword [esi + 0x2e48], 0
push edi
mov dword [esp + 0x80], ebp
je 0x438529
mov eax, dword [esi]
mov edx, dword [eax + 0x24]
lea ecx, [esp + 0x40]
push ecx
mov ecx, esi
call edx
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0xf4]
cmp dword [edx + 8], ecx
mov eax, dword [esi + 0x2e48]
mov dword [esp + 0x48], eax
jle 0x438529
cmp dword [edx], eax
jge 0x438529
mov edi, dword [esp + 0x44]
cmp dword [edx + 0xc], edi
jle 0x438529
mov ebx, dword [esp + 0x4c]
cmp dword [edx + 4], ebx
jge 0x438529
cmp byte [esi + 0x31c9], 0
je 0x437f72
mov ebp, dword [esi + 0x31e4]
mov dword [esp + 0x2c], eax
lea eax, [esi + 0x2e18]
mov dword [esp + 0x54], ebp
mov dword [esp + 0x24], ecx
mov dword [esp + 0x28], edi
mov dword [esp + 0x30], ebx
mov dword [esp + 0x20], eax
mov dword [esp + 0x50], 3
jmp 0x437fa0
mov ebx, dword [eax + 4]
test ebx, ebx
jle 0x43849e
mov edx, ecx
add ecx, ebx
cmp byte [eax], 0
mov ebx, dword [ebp]
mov dword [esp + 0x24], edx
mov dword [esp + 0x2c], ecx
je 0x437fdb
test dword [eax + 8], 0xfe000000
je 0x437fdb
mov eax, dword [esi + 0x31e8]
push eax
sub esp, 0x10
mov eax, esp
mov dword [eax], edx
mov edx, dword [ebx + 0x34]
jmp 0x437fec
mov eax, dword [esi + 0xc74]
push eax
sub esp, 0x10
mov eax, esp
mov dword [eax], edx
mov edx, dword [ebx + 0x38]
mov dword [eax + 4], edi
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x44]
mov dword [eax + 0xc], ecx
mov ecx, ebp
call edx
mov eax, dword [esi + 0x3298]
lea edi, [esi + 0x3324]
push eax
mov ecx, edi
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], 0
mov byte [esp + 0x16], 0
call fcn.00432c70
mov ecx, dword [esi + 0x3374]
push eax
add ecx, 8
call fcn.00431ac0
mov ebx, eax
test ebx, 0x1000
je 0x438089
mov eax, dword [esi + 0x3298]
push eax
mov ecx, edi
call fcn.00432c70
mov edi, eax
test edi, edi
mov eax, ebx
jle 0x43806e
test eax, 0x1000
je 0x43806e
mov eax, dword [esi + 0x3374]
sub edi, 1
push edi
lea ecx, [eax + 8]
call fcn.00431ac0
test edi, edi
jg 0x438051
test eax, 0x2000
jne 0x438089
and eax, 0xfff
and ebx, 0xfff
cmp ebx, eax
jge 0x438089
mov byte [esp + 0x12], 1
push 0x1f
push 0x1a
mov ecx, esi
call fcn.00437eb0
push 0x1e
push 0x19
mov dword [esp + 0x80], eax
call fcn.00437eb0
lea edi, [esi + 0x3324]
mov ecx, edi
mov dword [esp + 0x7c], eax
call fcn.00432c10
mov ebx, dword [esp + 0x14]
cmp ebx, eax
jge 0x438492
jmp 0x4380c7
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x4c]
cmp dword [esp + 0x1c], ecx
jge 0x438492
mov ecx, edi
call fcn.00432c10
cmp ebx, eax
jl 0x4380f7
push 0x6ec
push str..._source_scintilla_srcEditor.cxx
push str.visibleLine___cs.LinesDisplayed__
call fcn.0047e810
add esp, 0xc
push ebx
mov ecx, edi
call fcn.00432c70
mov ebx, eax
push ebx
mov ecx, edi
mov dword [esp + 0x40], ebx
call fcn.00432de0
test al, al
jne 0x438128
push 0x6ef
push str..._source_scintilla_srcEditor.cxx
push str.cs.GetVisible_lineDoc_
call fcn.0047e810
add esp, 0xc
push ebx
mov ecx, edi
call fcn.00432c30
cmp dword [esp + 0x14], eax
mov eax, dword [esi + 0x3374]
push ebx
lea ecx, [eax + 8]
sete byte [esp + 0x17]
call fcn.00431ac0
mov dword [esp + 0x34], eax
mov eax, dword [esi + 0x3374]
lea ecx, [ebx + 1]
push ecx
lea ecx, [eax + 8]
call fcn.00431ac0
mov dword [esp + 0x38], eax
mov eax, dword [esi + 0x3374]
push ebx
lea ecx, [eax + 8]
call fcn.004318e0
cmp byte [esp + 0x13], 0
mov ebx, eax
jne 0x43817c
xor ebx, ebx
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x34]
mov ecx, edx
and eax, 0xfff
and ecx, 0xfff
test dword [esp + 0x34], 0x2000
mov dword [esp + 0x18], eax
je 0x438229
cmp byte [esp + 0x13], 0
je 0x43821c
mov edx, dword [esp + 0x3c]
push edx
mov ecx, edi
call fcn.00432e10
test al, al
je 0x4381eb
cmp dword [esp + 0x18], 0x400
jne 0x4381d4
or ebx, 0x80000000
mov byte [esp + 0x12], 0
jmp 0x43829c
mov ecx, dword [esp + 0x78]
mov eax, 1
shl eax, cl
mov byte [esp + 0x12], 0
or ebx, eax
jmp 0x43829c
cmp dword [esp + 0x18], 0x400
jne 0x438205
or ebx, 0x40000000
mov byte [esp + 0x12], 0
jmp 0x43829c
mov ecx, dword [esp + 0x7c]
mov edx, 1
shl edx, cl
mov byte [esp + 0x12], 0
or ebx, edx
jmp 0x43829c
or ebx, 0x20000000
mov byte [esp + 0x12], 0
jmp 0x43829c
test dword [esp + 0x34], 0x1000
je 0x438279
cmp byte [esp + 0x12], 0
je 0x43825a
test edx, 0x1000
jne 0x438296
cmp eax, 0x400
mov byte [esp + 0x12], 0
jle 0x438544
or ebx, 0x8000000
jmp 0x43829c
cmp eax, 0x400
jle 0x43829c
cmp ecx, eax
jge 0x438296
cmp ecx, 0x400
jle 0x438544
or ebx, 0x8000000
jmp 0x43829c
cmp eax, 0x400
jle 0x43829c
cmp ecx, eax
jge 0x438296
test edx, 0x1000
mov byte [esp + 0x12], 0
je 0x438265
mov byte [esp + 0x12], 1
or ebx, 0x20000000
mov eax, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x20]
and ebx, dword [ecx + 8]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x5c], edx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x60], eax
mov eax, dword [esi + 0x2d78]
mov dword [esp + 0x64], edx
mov edx, dword [esp + 0x1c]
add eax, edx
cmp byte [ecx], 0
mov dword [esp + 0x5c], edx
mov dword [esp + 0x64], eax
jne 0x438428
cmp byte [esp + 0x13], 0
mov byte [esp + 0x84], 0
je 0x438310
mov eax, dword [esp + 0x3c]
add eax, 1
push eax
lea eax, [esp + 0x88]
push 0x4d2248
push eax
call fcn.004a07a0
mov eax, dword [esp + 0x70]
add esp, 0xc
test byte [esi + 0x3320], 0x40
je 0x438372
mov ecx, dword [esp + 0x3c]
mov eax, dword [esi + 0x3374]
push ecx
lea ecx, [eax + 8]
call fcn.00431ac0
mov edx, eax
sar edx, 0x10
push edx
mov edx, eax
shr edx, 9
not dl
mov ecx, eax
and eax, 0x2000
and ecx, 0xfff
push ecx
and edx, 8
or edx, 0x57
neg eax
sbb eax, eax
and eax, 0xffffffe9
push edx
add eax, 0x5f
push eax
lea eax, [esp + 0x94]
push str._c_c__03X__03X
push eax
call fcn.004a07a0
mov eax, dword [esp + 0x7c]
add esp, 0x18
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x5c]
mov edi, dword [ebp]
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x74], eax
lea eax, [esp + 0x84]
mov dword [esp + 0x6c], edx
mov dword [esp + 0x70], ecx
call fcn.00437ed0
push eax
lea edx, [esp + 0x88]
push edx
lea eax, [esi + 0xc94]
push eax
mov eax, dword [edi + 0x58]
mov ecx, ebp
call eax
mov edi, dword [esp + 0x70]
mov ecx, dword [esi + 0xc74]
mov edx, dword [esi + 0xc6c]
sub edi, eax
mov eax, dword [ebp]
push ecx
mov dword [esp + 0x3c], eax
push edx
lea eax, [esp + 0x8c]
sub edi, 3
call fcn.00437ed0
mov ecx, dword [esp + 0x74]
mov edx, dword [esi + 0x2d7c]
mov ebp, dword [esp + 0x5c]
push eax
add edx, ecx
lea eax, [esp + 0x90]
push eax
push edx
mov edx, dword [esp + 0x88]
lea eax, [esi + 0xc94]
push eax
sub esp, 0x10
mov eax, esp
mov dword [eax], edi
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x98]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
mov eax, dword [esp + 0x60]
mov eax, dword [eax + 0x48]
mov ecx, ebp
call eax
test ebx, ebx
je 0x438468
lea ecx, [esi + 0x2a18]
xor edi, edi
mov dword [esp + 0x18], ecx
test ebx, ebx
je 0x438468
test bl, 1
je 0x438453
lea edx, [esi + 0xc94]
push edx
lea eax, [esp + 0x5c]
push eax
push ebp
call fcn.00476160
mov ecx, dword [esp + 0x18]
add edi, 1
add ecx, 0x18
sar ebx, 1
cmp edi, 0x20
mov dword [esp + 0x18], ecx
jl 0x438438
mov ecx, dword [esi + 0x2d78]
mov ebx, dword [esp + 0x14]
add dword [esp + 0x1c], ecx
lea edi, [esi + 0x3324]
add ebx, 1
mov ecx, edi
mov dword [esp + 0x14], ebx
call fcn.00432c10
cmp ebx, eax
jl 0x4380c3
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
mov edi, dword [esp + 0x28]
add eax, 0x10
sub dword [esp + 0x50], 1
mov dword [esp + 0x20], eax
jne 0x437fa0
mov eax, dword [esi + 0xc24]
mov edx, dword [esp + 0x40]
mov edi, dword [esp + 0x48]
mov ebx, dword [ebp]
push eax
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x58]
mov dword [eax + 4], edx
mov edx, dword [ebx + 0x38]
mov dword [eax + 8], edi
mov dword [eax + 0xc], ecx
mov ecx, ebp
call edx
cmp byte [esi + 0x31c9], 0
je 0x438529
mov esi, dword [esi + 0x31e4]
mov ecx, dword [esp + 0x80]
mov edi, dword [ecx]
xor edx, edx
push esi
push edx
mov edx, dword [esp + 0x48]
xor eax, eax
push eax
sub esp, 0x10
mov eax, esp
mov dword [eax], edx
mov edx, dword [esp + 0x60]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x64]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x68]
mov dword [eax + 0xc], edx
mov eax, dword [edi + 0x44]
call eax
mov ecx, dword [esp + 0xe8]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0049ec31
add esp, 0xdc
ret 8
or ebx, 0x10000000
jmp 0x43829c