Function at 0x402480
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x47e8ff
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1bc
push ebx
push ebp
push esi
push edi
mov edi, ecx
mov edx, dword [edi + 0x3c]
mov esi, dword [edi + 0x44]
xor ebx, ebx
cmp byte [edx + esi], 4
mov ecx, 1
mov dword [esp + 0x10], ebx
mov eax, ecx
je 0x402529
mov eax, dword [edi + 0x44]
mov ecx, dword [edi + 0x3c]
cmp byte [eax + ecx], 6
je 0x402815
push 0x1f
push str.Read_error:_bad_event_list__11_
lea ecx, [esp + 0x1c]
mov dword [esp + 0x34], 0xf
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
call fcn.00414d30
mov dword [esp + 0x1d4], 6
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x40]
push eax
call fcn.00415340
push 0x4978fc
lea ecx, [esp + 0x40]
push ecx
call fcn.004637cb
jmp 0x402520
mov eax, dword [esp + 0x30]
mov ecx, 1
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x1d4], ecx
add dword [edi + 0x44], ecx
mov edx, dword [edi]
mov dword [esp + 0x1b4], eax
add eax, ecx
mov ecx, dword [edi + 0x44]
mov dword [esp + 0x30], eax
mov eax, dword [edi + 0x3c]
mov esi, dword [ecx + eax]
mov dword [esp + 0x1b8], esi
add ecx, 4
mov dword [edi + 0x44], ecx
mov ebp, dword [eax + ecx]
mov dword [esp + 0x1bc], ebp
add ecx, 4
mov dword [edi + 0x44], ecx
inc ecx
mov dword [esp + 0x7c], edx
movzx edx, byte [eax + ecx - 1]
mov dword [edi + 0x44], ecx
mov eax, dword [eax + ecx]
add ecx, 4
cmp eax, ebx
mov dword [esp + 0x70], edx
mov dword [edi + 0x44], ecx
jl 0x4025b9
mov dword [esp + 0x38], eax
lea eax, [edi + 0x1c]
push eax
lea eax, [esp + 0x38]
mov dword [esp + 0x38], esi
call fcn.00409290
mov esi, dword [eax]
mov dword [esp + 0x1b8], esi
cmp esi, 0xffffffff
jle 0x402632
mov eax, dword [edi]
mov ecx, dword [eax + 0xafc]
sub ecx, dword [eax + 0xaf8]
sar ecx, 2
cmp esi, ecx
jae 0x40273a
mov edx, dword [eax + 0xaf8]
mov eax, dword [edx + esi*4]
mov dword [esp + 0x6c], eax
mov eax, dword [eax + 4]
mov eax, dword [eax + 0x10]
mov ecx, dword [eax + 4]
mov edx, dword [eax + 8]
sub edx, ecx
sar edx, 3
cmp edx, ebp
jbe 0x4027ca
mov ecx, dword [ecx + ebp*8]
lea edx, [ebp*8]
mov dword [esp + 0x68], ecx
mov ecx, dword [eax + 4]
mov eax, dword [eax + 8]
sub eax, ecx
sar eax, 3
cmp eax, ebp
jbe 0x4027ca
movzx eax, word [ecx + edx + 4]
or dword [esp + 0x10], eax
and eax, 0x80
mov dword [esp + 0x74], eax
jmp 0x402653
push ebp
call fcn.0043c5d0
mov dword [esp + 0x6c], eax
add esp, 4
mov eax, ebp
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x74], ebx
call fcn.0043c570
or word [esp + 0x10], ax
push esi
lea ecx, [esp + 0x84]
push ecx
call fcn.00402d10
mov eax, dword [edi + 0x44]
mov edx, dword [edi + 0x3c]
cmp byte [eax + edx], 5
jne 0x4027cf
mov ecx, dword [esp + 0x88]
inc eax
mov dword [edi + 0x44], eax
mov eax, dword [esp + 0x84]
mov dl, 1
cmp eax, ecx
je 0x4026a2
lea esp, [esp]
mov esi, dword [eax]
cmp byte [esi + 0x18], bl
je 0x4026a0
add eax, 4
cmp eax, ecx
jne 0x402690
jmp 0x4026a2
xor dl, dl
movzx eax, dl
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x6c]
cmp eax, ebx
jne 0x4026b7
mov dword [esp + 0x64], ebx
jmp 0x4026e1
cmp dword [eax + 0x10], ebx
je 0x4026c6
mov dword [esp + 0x64], 2
jmp 0x4026e1
mov ecx, dword [eax + 0xbc]
sub ecx, dword [eax + 0xb8]
and ecx, 0xfffffffc
neg ecx
sbb ecx, ecx
and ecx, 2
inc ecx
mov dword [esp + 0x64], ecx
mov eax, dword [esp + 0x1dc]
lea ecx, [esp + 0x64]
call fcn.00408a00
mov dword [esp + 0x1d4], 0xffffffff
mov eax, dword [esp + 0x84]
cmp eax, ebx
je 0x402710
push eax
call fcn.00456cf3
add esp, 4
mov edx, dword [edi + 0x3c]
mov eax, dword [edi + 0x44]
cmp byte [edx + eax], 4
mov dword [esp + 0x84], ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebx
je 0x402520
jmp 0x4024ba
lea ecx, [esp + 0x10]
call fcn.00414640
mov byte [esp + 0x1d4], 2
mov edi, dword [edi]
mov ecx, dword [edi + 0xafc]
sub ecx, dword [edi + 0xaf8]
add edi, 0xaf4
sar ecx, 2
push ecx
push esi
lea edx, [esp + 0x18]
push str.The_event_list_is_corrupt._n_n_oid:__d__num_objects:__d_
push edx
call fcn.00413e40
mov edx, dword [esp + 0x20]
mov eax, edx
add esp, 0x10
mov dword [esp + 0x2c], 0xf
mov dword [esp + 0x28], ebx
mov byte [esp + 0x18], bl
lea esi, [eax + 1]
nop
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x402790
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x1c]
call fcn.00414d30
mov byte [esp + 0x1d4], 3
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x40]
push ecx
call fcn.00415340
push 0x4978fc
lea edx, [esp + 0x40]
push edx
call fcn.004637cb
call fcn.0040a120
push 0x1e
push str.Read_error:_bad_event_list__9_
lea ecx, [esp + 0x1c]
mov dword [esp + 0x34], 0xf
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
call fcn.00414d30
mov byte [esp + 0x1d4], 4
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x40]
push ecx
call fcn.00415340
push 0x4978fc
lea edx, [esp + 0x40]
push edx
call fcn.004637cb
mov ecx, dword [esp + 0x1cc]
inc eax
mov dword [edi + 0x44], eax
mov ax, word [esp + 0x10]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x1c8
ret 4