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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x94
push esi
mov dword [ebp - 0x94], 0x1f8a
mov dword [ebp - 0x10], 0x9019
mov dword [ebp - 4], 0x8d06
mov dword [ebp - 8], 0xfa34
mov dword [ebp - 0xc], 0xd4dc
cmp dword [0x4346d0], 0
je 0x4094f3
mov eax, 1
jmp 0x40a5b4
mov eax, dword [0x433abc]
add eax, 0x1c
mov ecx, dword fs:[eax]
mov dword [ebp - 0x70], ecx
mov edx, dword [ebp - 0x70]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov ecx, 4
shl ecx, 0
mov edx, dword [ebp - 0x74]
mov eax, dword [edx + ecx + 8]
mov dword [ebp - 0x2c], eax
jmp 0x40953d
mov ecx, 4
imul edx, ecx, 0
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax + edx]
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x2c]
cmp dword [edx + 0x18], 0
je 0x40a0ed
mov eax, dword [ebp - 0x2c]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x78], edx
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x14]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x7c]
add edx, 0x78
mov dword [ebp - 0x80], edx
mov eax, 8
imul ecx, eax, 0
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0
jne 0x409587
jmp 0x40952c
mov ecx, dword [ebp - 0x14]
add ecx, dword [ebp - 0x68]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
add eax, dword [edx + 0xc]
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x84]
push ecx
call fcn.00405480
add esp, 4
cmp eax, 0x25b61d30
jne 0x40a0e8
mov edx, dword [0x433a6c]
cmp edx, dword [ebp - 0x10]
jge 0x409653
mov eax, dword [0x4339f4]
mov dword [ebp - 0x34], eax
jmp 0x4095db
mov ecx, dword [ebp - 0x34]
add ecx, 1
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x34]
cmp edx, dword [ebp - 4]
jg 0x40964e
mov eax, dword [ebp - 4]
mov dword [ebp - 0x38], eax
jmp 0x4095f4
mov ecx, dword [ebp - 0x38]
sub ecx, 1
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0x38]
cmp edx, dword [0x433a20]
jle 0x40964c
call fcn.004043c0
mov dword [ebp - 4], eax
push str.0l4:N_perquisite_VQp_M:z0n_unheard
call fcn.004010e0
add esp, 4
mov ecx, dword [ebp - 8]
sub ecx, 0x5cea
mov eax, dword [ebp - 0x10]
cdq
mov esi, 0x384
idiv esi
sub ecx, eax
sub ecx, dword [ebp - 8]
or ecx, dword [ebp - 4]
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0xc]
add edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 4]
sar edx, cl
or edx, dword [ebp - 4]
mov dword [ebp - 4], edx
jmp 0x4095eb
jmp 0x4095d2
jmp 0x40a0d7
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 4]
jne 0x409a6c
mov ecx, dword [ebp - 8]
mov dword [ebp - 0x3c], ecx
jmp 0x409670
mov edx, dword [ebp - 0x3c]
sub edx, 1
mov dword [ebp - 0x3c], edx
mov eax, dword [ebp - 0x3c]
cmp eax, dword [0x4339f4]
jb 0x409a67
mov ecx, dword [0x433a20]
mov dword [ebp - 0x20], ecx
cmp dword [ebp - 0x20], 0xa734
jg 0x4096bd
cmp dword [ebp - 0x20], 0xa734
je 0x4098c7
cmp dword [ebp - 0x20], 0x6864
je 0x409755
cmp dword [ebp - 0x20], 0x7b51
je 0x40995b
jmp 0x409a62
cmp dword [ebp - 0x20], 0x16d1a
je 0x4096cb
jmp 0x409a62
mov edx, dword [ebp - 4]
sub edx, dword [ebp - 0xc]
mov dword [0x433a20], edx
mov eax, dword [ebp - 4]
mov dword [ebp - 0xc], eax
mov eax, 0xd4ad
cdq
idiv dword [ebp - 8]
add edx, dword [ebp - 4]
mov dword [ebp - 0x10], edx
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 0xc]
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x10]
add edx, dword [ebp - 8]
sub edx, dword [ebp - 0xc]
mov dword [0x4339a4], edx
mov eax, 0x1850c
cdq
idiv dword [ebp - 8]
imul eax, eax, 0x7ad
mov ecx, dword [ebp - 0xc]
imul ecx, dword [ebp - 4]
add eax, ecx
mov dword [0x433a6c], eax
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 8]
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0xc]
imul eax, dword [ebp - 4]
mov ecx, dword [ebp - 0xc]
sub ecx, eax
mov edx, dword [ebp - 0xc]
imul edx, dword [ebp - 8]
add ecx, dword [ebp - 8]
add edx, ecx
mov dword [ebp - 8], edx
mov eax, dword [ebp - 4]
cdq
idiv dword [ebp - 0xc]
sub edx, 0x474d0654
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [ebp - 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_SetCommState]
mov dword [ebp - 0x10], eax
mov edx, dword [ebp - 0x10]
imul edx, dword [ebp - 8]
mov eax, dword [ebp - 8]
sub eax, edx
add eax, 0x16aad
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
push ecx
push 0xc6712
mov edx, dword [ebp - 8]
push edx
mov eax, dword [ebp - 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_SetFileTime]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0xc]
add ecx, 0x7963
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 4]
cdq
idiv dword [ebp - 0xc]
add edx, dword [ebp - 0x10]
mov dword [ebp - 8], edx
mov eax, 0xdcb0
cdq
idiv dword [ebp - 4]
mov ecx, 0x8e70
sub ecx, dword [ebp - 8]
sub ecx, 0x11859
shl eax, cl
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cdq
idiv dword [ebp - 0x10]
sub edx, dword [ebp - 0x10]
sub edx, dword [ebp - 8]
mov dword [ebp - 0x10], edx
mov ecx, dword [ebp - 0xc]
imul ecx, dword [ebp - 4]
add ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 8]
sub ecx, eax
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 8]
imul edx, dword [ebp - 4]
sub edx, 0x183ac
mov dword [ebp - 0x10], edx
mov dword [ebp - 0xc], 0x8a95
mov edx, dword [ebp - 0xc]
push edx
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp - 4]
push ecx
call fcn.004018d0
add esp, 0xc
push str.CZ_QoN_szM5_sealant_trustful_choosy_wG3cQMm
call fcn.004010e0
add esp, 4
mov edx, dword [ebp - 0x10]
imul edx, dword [ebp - 8]
add edx, dword [ebp - 8]
mov dword [ebp - 0xc], edx
push str.powers_fallguy_entailing_post_rollerskating
call fcn.004010e0
add esp, 4
mov eax, dword [ebp - 8]
or eax, 0x115a4
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 8]
cmp ecx, dword [0x433a30]
jg 0x4097d9
mov edx, dword [ebp - 8]
cmp edx, dword [0x43393c]
jae 0x4097c9
mov ecx, dword [ebp - 0xc]
sub ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
sar eax, cl
mov ecx, dword [ebp - 0xc]
sar eax, cl
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 8]
push ecx
push 0xed595
mov edx, dword [ebp - 8]
push edx
mov eax, dword [ebp - 0x10]
push eax
push 0
call dword [sym.imp.COMCTL32.dll_CreateMappedBitmap]
mov dword [ebp - 4], eax
mov eax, 0x10560
cdq
idiv dword [ebp - 8]
mov dword [ebp - 4], eax
mov ecx, dword [0x4339f4]
cmp ecx, dword [ebp - 0x10]
je 0x4097a0
mov edx, dword [ebp - 8]
cmp edx, dword [0x433a30]
jge 0x4097a0
mov eax, dword [ebp - 0xc]
cdq
mov ecx, 0x8b8c
idiv ecx
add edx, dword [ebp - 4]
sub edx, dword [ebp - 8]
mov dword [ebp - 0xc], edx
mov edx, dword [ebp - 4]
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0xc]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 8]
lea eax, [edx + ecx + 0x176ef]
mov ecx, dword [ebp - 0xc]
shl eax, cl
and eax, dword [ebp - 8]
mov dword [ebp - 4], eax
push str.transliteration_yzrI_hedonistic_typesetting_swallows
call fcn.004010e0
add esp, 4
mov ecx, dword [ebp - 4]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 4]
push edx
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetCommTimeouts]
mov dword [ebp - 0xc], eax
mov eax, 0xf123
cdq
idiv dword [ebp - 0xc]
mov dword [0x433924], edx
mov ecx, dword [ebp - 8]
push ecx
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp - 8]
push eax
call fcn.00401c10
add esp, 0xc
mov ecx, dword [ebp - 0x10]
imul ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0xc]
sub edx, 0x17222
or ecx, edx
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0xc]
cdq
idiv dword [ebp - 8]
imul eax, dword [ebp - 0x10]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x10]
cmp eax, dword [0x43393c]
ja 0x409a62
mov ecx, dword [ebp - 0xc]
push ecx
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.USER32.dll_SetForegroundWindow]
cmp dword [0x433a1c], eax
jae 0x409a62
mov edx, dword [ebp - 0x10]
push edx
call dword [sym.imp.KERNEL32.dll_DecodePointer]
cmp eax, dword [0x433acc]
jbe 0x409a62
mov eax, dword [0x433a1c]
cmp eax, dword [ebp - 4]
je 0x409a62
mov ecx, dword [ebp - 8]
add ecx, 0x17513
sub ecx, dword [ebp - 0x10]
mov edx, 0x10ee8
sar edx, cl
or edx, dword [ebp - 4]
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 8]
sub eax, dword [ebp - 8]
mov ecx, dword [ebp - 4]
lea edx, [eax + ecx + 0x1c88]
mov dword [0x433a6c], edx
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_DecodePointer]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0xc], ecx
mov eax, dword [ebp - 0xc]
cdq
idiv dword [ebp - 8]
mov eax, edx
cdq
idiv dword [ebp - 8]
add eax, dword [ebp - 0xc]
or eax, dword [ebp - 0x10]
mov dword [ebp - 8], eax
mov esi, dword [ebp - 8]
sub esi, 0x3b98
mov ecx, dword [ebp - 0x10]
imul ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
cdq
idiv dword [ebp - 0xc]
add ecx, eax
shl esi, cl
mov dword [0x433ab8], esi
mov edx, dword [ebp - 0xc]
push edx
mov eax, dword [ebp - 4]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_EnumDateFormatsA]
mov dword [ebp - 8], eax
call fcn.00401120
mov ecx, dword [ebp - 8]
sub ecx, dword [ebp - 0xc]
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 8]
mov dword [ebp - 4], edx
jmp 0x409667
jmp 0x40a0d7
mov eax, dword [ebp - 0x10]
cmp eax, dword [0x4339f4]
jae 0x409a7f
mov ecx, dword [ebp - 4]
cmp ecx, dword [ebp - 8]
jne 0x409a97
mov edx, dword [ebp - 0xc]
cmp edx, dword [ebp - 8]
jne 0x40a02a
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 8]
jle 0x40a02a
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [0x4339a4]
jne 0x409f50
mov edx, dword [ebp - 0x10]
cmp edx, dword [0x4339a4]
jl 0x409f4b
mov eax, dword [0x4339a4]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x10a1e
jg 0x409aee
cmp dword [ebp - 0x24], 0x10a1e
je 0x409c92
cmp dword [ebp - 0x24], 0x7360
je 0x409b00
cmp dword [ebp - 0x24], 0xa83c
je 0x409c11
jmp 0x409eec
cmp dword [ebp - 0x24], 0x16d21
je 0x409d20
jmp 0x409eec
mov dword [ebp - 4], 0x87f9
mov ecx, 0x264c
sub ecx, dword [ebp - 8]
imul edx, dword [ebp - 8], 0x151ba
imul edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
sub eax, edx
or ecx, eax
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [0x433a20]
jne 0x409b4e
mov edx, dword [ebp - 0xc]
add edx, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 4]
mov ecx, dword [ebp - 0xc]
sub ecx, eax
add ecx, dword [ebp - 0xc]
or edx, ecx
mov dword [ebp - 0xc], edx
jmp 0x409bfe
call fcn.004043c0
cmp eax, dword [0x4339f4]
jae 0x409bfe
mov edx, 0x25bf
sub edx, dword [ebp - 0xc]
mov dword [ebp - 4], edx
imul eax, dword [ebp - 0x10], 0x128ae
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 4]
add ecx, dword [ebp - 0x10]
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
lea ecx, [eax + edx + 0xd61f]
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 0xc]
cdq
idiv dword [ebp - 0xc]
mov ecx, edx
mov edx, dword [ebp - 4]
imul edx, dword [ebp - 8]
sub ecx, edx
mov eax, dword [ebp - 4]
cdq
idiv dword [ebp - 8]
sub ecx, edx
mov dword [ebp - 8], ecx
mov eax, dword [ebp - 4]
cdq
mov ecx, 0x17e47
idiv ecx
sub eax, 0x8759
mov edx, 0x9ecd
mov ecx, eax
sar edx, cl
mov dword [ebp - 8], edx
imul eax, dword [ebp - 0x10], 0x1622c
mov dword [ebp - 0x10], eax
mov ecx, dword [0x433ab8]
cmp ecx, dword [ebp - 8]
je 0x409b74
mov ecx, dword [ebp - 4]
add ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 0x10]
sub ecx, edx
add ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 4]
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 4]
mov dword [ebp - 8], edx
mov eax, dword [0x433a30]
cmp eax, dword [ebp - 8]
jge 0x409b00
jmp 0x409f46
push str.emancipating_WMfuPzZ_outplacement_rcC_WOg_X_kelp_h2yrZPb_anti
call fcn.004010e0
add esp, 4
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 8]
sub ecx, dword [ebp - 0x10]
or ecx, dword [ebp - 4]
mov dword [ebp - 0xc], ecx
imul edx, dword [ebp - 8], 0x8dad
sub edx, 0x1160b
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0xc]
or edx, eax
mov dword [ebp - 0xc], edx
mov ecx, dword [ebp - 8]
imul ecx, dword [ebp - 4]
sub ecx, dword [ebp - 0xc]
or ecx, dword [ebp - 8]
or ecx, dword [ebp - 8]
mov dword [0x4339a4], ecx
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 0xc]
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 8]
add eax, dword [ebp - 0x10]
or eax, dword [ebp - 8]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 0xc]
mov ecx, eax
mov eax, dword [ebp - 8]
cdq
idiv dword [ebp - 0xc]
add ecx, dword [ebp - 4]
add edx, ecx
or edx, 0xb9d9
mov dword [ebp - 0x10], edx
mov edx, dword [ebp - 8]
and edx, 0x14e2b
mov dword [ebp - 0xc], edx
mov eax, 0xc295
cdq
idiv dword [ebp - 0xc]
mov ecx, eax
add ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 0xc]
sub ecx, eax
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 8]
mov dword [ebp - 4], edx
call fcn.00401120
mov eax, dword [ebp - 4]
cdq
idiv dword [ebp - 0x10]
mov eax, dword [ebp - 4]
lea edx, [eax + edx + 0x133ff]
mov ecx, dword [ebp - 4]
imul ecx, dword [ebp - 0xc]
shl edx, cl
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 4]
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0xc]
sub ecx, dword [ebp - 8]
add ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 0xc]
mov dword [ebp - 0xc], ecx
mov eax, dword [ebp - 4]
cdq
idiv dword [ebp - 8]
mov dword [ebp - 8], edx
mov ecx, dword [ebp - 4]
add ecx, 0x6903
imul esi, dword [ebp - 0x10], 0x94c4
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 8]
add esi, eax
or ecx, esi
mov dword [ebp - 0x10], ecx
mov eax, 0x10110
cdq
idiv dword [ebp - 0x10]
mov eax, edx
cdq
idiv dword [ebp - 4]
sub eax, dword [ebp - 8]
and eax, 0x6457
mov dword [ebp - 0xc], eax
mov edx, dword [0x433a30]
mov dword [ebp - 0x40], edx
jmp 0x409d4e
mov eax, dword [ebp - 0x40]
sub eax, 1
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x40]
cmp ecx, dword [ebp - 8]
jne 0x409eec
mov edx, dword [ebp - 8]
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x10]
push eax
call fcn.00401300
add esp, 4
mov ecx, dword [ebp - 4]
imul ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 8]
mov dword [0x433a6c], ecx
mov eax, dword [ebp - 8]
cdq
idiv dword [ebp - 4]
mov edx, dword [ebp - 8]
sub edx, eax
or edx, 0x1025
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 0xc]
cdq
idiv dword [ebp - 8]
mov dword [0x433acc], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.004016b0
add esp, 4
mov eax, dword [ebp - 8]
cdq
idiv dword [ebp - 4]
mov eax, dword [ebp - 4]
lea edx, [eax + edx - 0x10151]
mov ecx, 0xc360
sub ecx, dword [ebp - 4]
sar edx, cl
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
add eax, 0x84ef
mov ecx, dword [ebp - 4]
imul ecx, dword [ebp - 0xc]
sub eax, ecx
add eax, dword [ebp - 4]
mov dword [ebp - 4], eax
mov edx, dword [ebp - 8]
imul edx, dword [ebp - 0xc]
imul edx, dword [ebp - 0xc]
and edx, dword [ebp - 0x10]
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 8]
add edx, dword [ebp - 8]
add edx, dword [ebp - 4]
add edx, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
mov ecx, edx
sar eax, cl
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
cdq
idiv dword [ebp - 4]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebp - 0xc]
push ecx
call dword [sym.imp.GDI32.dll_CheckColorsInGamut]
mov dword [ebp - 4], eax
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 4]
or edx, dword [ebp - 0xc]
mov dword [0x433a1c], edx
imul eax, dword [ebp - 4], 0x14ba
sub eax, dword [ebp - 4]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
cdq
mov ecx, 0x1769
idiv ecx
mov ecx, eax
sub ecx, dword [ebp - 4]
mov eax, dword [ebp - 4]
cdq
idiv dword [ebp - 4]
add ecx, eax
and ecx, dword [ebp - 0xc]
mov dword [ebp - 8], ecx
mov esi, dword [ebp - 0xc]
imul esi, dword [ebp - 0xc]
add esi, dword [ebp - 8]
mov eax, dword [ebp - 4]
cdq
idiv dword [ebp - 0xc]
mov ecx, edx
shl esi, cl
mov dword [0x433a68], esi
mov edx, dword [0x4339f4]
cmp edx, dword [ebp - 8]
jb 0x409df9
mov eax, dword [0x433a68]
cmp eax, dword [ebp - 8]
je 0x409da7
push str.rovers_offprint_modelling_UpVv23rH_doctorate
call fcn.004010e0
add esp, 4
mov eax, dword [ebp - 0xc]
cdq
idiv dword [ebp - 4]
add edx, dword [ebp - 8]
add edx, dword [ebp - 4]
mov dword [ebp - 0xc], edx
mov ecx, dword [ebp - 4]
sub ecx, 0x179ab
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 8]
cmp edx, dword [0x433acc]
jbe 0x409d5a
jmp 0x409d45
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0x10]
imul eax, dword [ebp - 8]
mov ecx, dword [ebp - 4]
add ecx, 0xa06b
sar eax, cl
mov ecx, dword [ebp - 4]
sar eax, cl
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 4]
add ecx, 0xf6c2
sub ecx, dword [ebp - 0x10]
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0x10]
imul ecx, dword [ebp - 0xc]
imul ecx, dword [ebp - 4]
add ecx, dword [ebp - 0xc]
mov edx, 0x5985
sar edx, cl
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 4]
add eax, dword [ebp - 4]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 8]
sub ecx, dword [ebp - 0xc]
sub ecx, dword [ebp - 0xc]
mov dword [ebp - 4], ecx
jmp 0x409aa6
jmp 0x40a025
mov edx, dword [ebp - 8]
cmp edx, dword [0x433924]
jne 0x409f63
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 4]
jl 0x409f77
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [ebp - 0x10]
jne 0x409ff2
mov edx, dword [ebp - 0x10]
cmp edx, dword [ebp - 8]
jle 0x409ff2
mov eax, dword [0x433a1c]
mov dword [ebp - 0x44], eax
jmp 0x409f8a
mov ecx, dword [ebp - 0x44]
sub ecx, 1
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x44]
cmp edx, dword [ebp - 0x10]
jg 0x409ff0
mov ecx, dword [ebp - 0xc]
sub ecx, dword [ebp - 0x10]
add ecx, dword [ebp - 8]
mov eax, dword [ebp - 8]
cdq
mov esi, 0x166dd
idiv esi
add ecx, edx
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 0xc]
cdq
idiv dword [ebp - 4]
mov eax, edx
cdq
mov ecx, 0x1637f
idiv ecx
add edx, dword [ebp - 4]
add edx, dword [ebp - 0xc]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 8]
cdq
idiv dword [ebp - 8]
mov ecx, dword [ebp - 4]
shl edx, cl
mov dword [ebp - 4], edx
mov ecx, dword [ebp - 8]
sub ecx, dword [ebp - 0x10]
add ecx, 0x58d4
sub ecx, dword [ebp - 8]
add ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x10]
sar edx, cl
mov dword [ebp - 0x10], edx
jmp 0x409f81
jmp 0x40a016
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x48], eax
jmp 0x40a003
mov ecx, dword [ebp - 0x48]
sub ecx, 1
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x48]
cmp edx, dword [0x433ab8]
jbe 0x40a016
mov eax, dword [ebp - 4]
mov dword [ebp - 0x10], eax
jmp 0x409ffa
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [0x433a20]
jge 0x409f50
jmp 0x40a0d7
mov edx, dword [ebp - 0xc]
cmp edx, dword [ebp - 0x10]
jne 0x40a0d7
mov eax, dword [ebp - 8]
mov dword [ebp - 0x4c], eax
jmp 0x40a047
mov ecx, dword [ebp - 0x4c]
add ecx, 1
mov dword [ebp - 0x4c], ecx
mov edx, dword [ebp - 0x4c]
cmp edx, dword [0x433a1c]
jbe 0x40a0d7
mov eax, dword [ebp - 4]
mov dword [ebp - 0x50], eax
jmp 0x40a067
mov ecx, dword [ebp - 0x50]
sub ecx, 1
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x50]
cmp edx, dword [0x43393c]
jae 0x40a0d2
push str.lung_YeB_superiority_vexes_prospects_teSsJ9H
call fcn.004010e0
add esp, 4
mov eax, dword [ebp - 0x10]
add eax, 0x35e24d9e
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 8]
imul ecx, dword [ebp - 0x10]
mov edx, 0x54c1ca79
sub edx, ecx
mov dword [0x4339a4], edx
mov eax, dword [ebp - 4]
imul eax, dword [ebp - 0xc]
imul eax, dword [ebp - 4]
add eax, dword [ebp - 0xc]
add eax, dword [ebp - 0x10]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
cdq
idiv dword [ebp - 4]
mov esi, eax
add esi, dword [ebp - 8]
mov eax, dword [ebp - 4]
cdq
mov ecx, 0x12e57
idiv ecx
mov ecx, eax
sar esi, cl
mov dword [ebp - 4], esi
jmp 0x40a05e
jmp 0x40a03e
mov edx, dword [ebp - 0xc]
cmp edx, dword [0x433a68]
ja 0x4095b9
jmp 0x40a0ed
jmp 0x40952c
cmp dword [ebp - 0x18], 0
jne 0x40a0fa
xor eax, eax
jmp 0x40a5b4
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
add eax, dword [edx + 0x1c]
mov dword [ebp - 0x90], eax
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
add edx, dword [ecx + 0x20]
mov dword [ebp - 0x88], edx
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
add ecx, dword [eax + 0x24]
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x30], 0x4346d4
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x14]
add ecx, dword [eax + edx*4 - 4]
mov dword [ebp - 0x6c], ecx
mov edx, dword [ebp - 0x6c]
movzx eax, word [edx]
cmp eax, 0x775a
jne 0x40a56e
mov ecx, dword [ebp - 0x6c]
push ecx
call fcn.00404eb0
add esp, 4
imul edx, dword [ebp - 0x1c], 0xc
mov ecx, dword [ebp - 0x30]
mov dword [ecx + edx], eax
mov edx, dword [0x433a6c]
mov dword [ebp - 0x54], edx
jmp 0x40a18c
mov eax, dword [ebp - 0x54]
add eax, 1
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x54]
cmp ecx, dword [ebp - 0x10]
jg 0x40a538
mov edx, 0x10029
sub edx, dword [ebp - 8]
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0x10]
add edx, eax
or edx, dword [ebp - 4]
mov dword [ebp - 0xc], edx
mov ecx, dword [ebp - 0x10]
add ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 4]
sub ecx, dword [ebp - 0xc]
sub ecx, dword [ebp - 0xc]
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 4]
add edx, dword [ebp - 8]
add edx, dword [ebp - 0xc]
mov dword [ebp - 4], edx
mov eax, dword [0x4339a4]
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0x14e1c
je 0x40a2a0
cmp dword [ebp - 0x58], 0x15487
je 0x40a1fd
cmp dword [ebp - 0x58], 0x178d6
je 0x40a3c3
jmp 0x40a439
mov eax, dword [ebp - 8]
cdq
idiv dword [ebp - 0x10]
mov esi, dword [ebp - 4]
sub esi, eax
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0xc]
cdq
idiv dword [ebp - 0x10]
mov ecx, edx
sar esi, cl
mov dword [ebp - 4], esi
mov eax, 0xea5b
cdq
idiv dword [ebp - 4]
mov edx, dword [ebp - 0x10]
mov ecx, eax
sar edx, cl
mov dword [ebp - 0xc], edx
mov eax, dword [0x433a68]
mov dword [ebp - 0x5c], eax
jmp 0x40a241
mov ecx, dword [ebp - 0x5c]
add ecx, 1
mov dword [ebp - 0x5c], ecx
mov edx, dword [ebp - 0x5c]
cmp edx, dword [ebp - 4]
jle 0x40a269
call fcn.00401120
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 4]
lea edx, [ecx + eax - 0x891a]
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 8]
mov dword [ebp - 0xc], eax
jmp 0x40a238
mov ecx, dword [0x433a1c]
cmp ecx, dword [ebp - 0xc]
jae 0x40a21b
mov edx, dword [ebp - 0xc]
imul edx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
lea ecx, [eax + edx - 0x11bd4]
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 8]
imul eax, dword [ebp - 0x10]
and eax, 0xdfd
mov dword [ebp - 4], eax
jmp 0x40a533
mov esi, dword [ebp - 4]
sub esi, dword [ebp - 4]
mov eax, dword [ebp - 0xc]
cdq
idiv dword [ebp - 8]
sub esi, eax
mov ecx, dword [ebp - 4]
sar esi, cl
mov dword [ebp - 4], esi
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
shl edx, cl
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 8]
cdq
idiv dword [ebp - 0xc]
mov esi, edx
mov eax, dword [ebp - 8]
imul eax, dword [ebp - 8]
cdq
idiv dword [ebp - 8]
mov eax, edx
cdq
idiv dword [ebp - 4]
mov ecx, edx
sar esi, cl
mov dword [ebp - 0xc], esi
mov eax, dword [0x433a1c]
mov dword [ebp - 0x60], eax
jmp 0x40a2f6
mov ecx, dword [ebp - 0x60]
sub ecx, 1
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x60]
cmp edx, dword [ebp - 0xc]
jne 0x40a3be
mov eax, dword [ebp - 8]
mov dword [ebp - 4], eax
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0xc]
shl edx, cl
mov ecx, dword [ebp - 4]
sub ecx, dword [ebp - 0xc]
sar edx, cl
mov dword [ebp - 0x10], edx
mov eax, dword [0x433a1c]
mov dword [ebp - 0x64], eax
jmp 0x40a32e
mov ecx, dword [ebp - 0x64]
add ecx, 1
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x64]
cmp edx, dword [ebp - 8]
jl 0x40a3aa
call fcn.00403ec0
mov dword [ebp - 4], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 8]
mov edx, dword [ebp - 8]
mov ecx, eax
shl edx, cl
mov dword [0x4339f0], edx
imul ecx, dword [ebp - 0x10], 0x1186b
sub ecx, dword [ebp - 4]
mov eax, dword [ebp - 8]
sar eax, cl
and eax, dword [ebp - 8]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
cdq
idiv dword [ebp - 4]
add edx, dword [ebp - 4]
mov ecx, dword [ebp - 0x10]
sub ecx, dword [ebp - 4]
or edx, ecx
mov dword [ebp - 0xc], edx
mov edx, dword [ebp - 8]
add edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 4]
sar edx, cl
and edx, dword [ebp - 4]
mov dword [0x433a20], edx
mov eax, dword [ebp - 8]
imul eax, dword [ebp - 8]
mov ecx, dword [ebp - 4]
shl eax, cl
mov dword [ebp - 8], eax
jmp 0x40a325
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [0x433ab8]
jbe 0x40a302
jmp 0x40a2ed
jmp 0x40a533
mov eax, dword [ebp - 4]
imul eax, dword [ebp - 8]
cdq
idiv dword [ebp - 4]
add eax, dword [ebp - 4]
mov dword [ebp - 0xc], eax
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
imul eax, dword [ebp - 0x10]
sub edx, eax
add edx, dword [ebp - 0x10]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
imul eax, dword [ebp - 8]
cdq
idiv dword [ebp - 0x10]
sub edx, dword [ebp - 0xc]
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x10]
cdq
mov ecx, 0x125b5
idiv ecx
mov ecx, dword [ebp - 8]
sub ecx, dword [ebp - 4]
sar eax, cl
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
cdq
idiv dword [ebp - 4]
add eax, dword [ebp - 8]
add eax, dword [ebp - 8]
mov ecx, dword [ebp - 4]
imul ecx, dword [ebp - 0xc]
sar eax, cl
mov dword [ebp - 0x10], eax
mov edx, dword [ebp - 0xc]
cmp edx, dword [0x4339f0]
jle 0x40a3c3
jmp 0x40a533
mov eax, dword [ebp - 8]
imul eax, dword [ebp - 8]
mov ecx, dword [ebp - 4]
sar eax, cl
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0xc]
push edx
mov eax, dword [ebp - 4]
push eax
call fcn.004018d0
add esp, 0xc
push str.declivity_riddle
call fcn.004010e0
add esp, 4
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x10]
lea eax, [edx + ecx + 0x1320c]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0xc]
or edx, dword [ebp - 4]
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
mov dword [0x433acc], eax
mov ecx, dword [ebp - 4]
push ecx
mov edx, dword [ebp - 0xc]
push edx
call dword [sym.imp.GDI32.dll_GetFontUnicodeRanges]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0xc]
cdq
idiv dword [ebp - 0x10]
mov esi, eax
mov eax, dword [ebp - 8]
cdq
idiv dword [ebp - 8]
sub esi, eax
mov ecx, dword [ebp - 8]
sar esi, cl
mov dword [0x4339f0], esi
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x10]
mov dword [0x4339f4], eax
mov ecx, dword [ebp - 0xc]
add ecx, 0x15660
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp - 4]
push eax
mov ecx, dword [ebp - 8]
push ecx
call fcn.004018d0
add esp, 0xc
mov ecx, dword [ebp - 0xc]
add ecx, 0x14ba6
mov esi, 0xce89
shl esi, cl
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 0xc]
and esi, eax
mov dword [ebp - 0xc], esi
mov eax, dword [ebp - 0xc]
cdq
idiv dword [ebp - 4]
mov eax, edx
cdq
idiv dword [ebp - 0xc]
add edx, dword [ebp - 0x10]
add edx, dword [ebp - 4]
sar edx, 0x6b
mov dword [ebp - 0x10], edx
mov edx, dword [ebp - 4]
cmp edx, dword [0x433acc]
jne 0x40a479
mov eax, dword [ebp - 8]
mov dword [ebp - 0x10], eax
jmp 0x40a183
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x8c]
movzx eax, word [edx + ecx*2 - 2]
imul ecx, dword [ebp - 0x1c], 0xc
mov edx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x90]
mov eax, dword [esi + eax*4]
mov dword [edx + ecx + 4], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x1c], 0x226
jne 0x40a56e
jmp 0x40a57d
mov edx, dword [ebp - 0x28]
sub edx, 1
mov dword [ebp - 0x28], edx
jne 0x40a13e
mov eax, dword [ebp - 0x1c]
mov dword [0x4346d0], eax
mov ecx, dword [0x4346d0]
push ecx
mov edx, dword [ebp - 0x30]
push edx
call fcn.00406490
add esp, 8
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [0x4346d0]
push ecx
mov edx, dword [ebp - 0x30]
push edx
call fcn.00408620
add esp, 0xc
mov eax, 1
pop esi
mov esp, ebp
pop ebp
ret