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

Disassembly:
push 0xffffffffffffffff
push 0x4ee54a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x60
mov eax, 0x50
push ebx
mov dword [esp + 0x44], eax
mov dword [esp + 0x4c], eax
mov eax, 0x55
push ebp
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov eax, 0xd9
push esi
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov al, byte [0xcc931d]
push edi
test al, al
mov esi, ecx
mov dword [esp + 0x54], 0xe6
mov dword [esp + 0x5c], 0xfa
je 0x489fbb
push 0x1cc
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov dword [esp + 0x78], 0
je 0x489ee1
push 0
mov ebp, 1
push 0
push ebp
push 0x386
push ebp
push 0x10
push 0
push 0x988
push 0x988
push esi
push 0xab
push 0xd2
mov ecx, eax
call fcn.0042ac40
jmp 0x489ee8
xor eax, eax
mov ebp, 1
mov dword [esi + 0x220], eax
mov byte [eax + 0xee], 8
mov eax, dword [esi + 0x220]
or edi, 0xffffffff
push ebp
push esi
mov byte [eax + 0xef], 5
mov ecx, dword [esi + 0x220]
mov dword [esp + 0x80], edi
mov byte [ecx + 0x58], 0x3c
mov edx, dword [esi + 0x220]
mov dword [edx + 0xb8], ebp
mov ecx, dword [esi + 0x220]
call fcn.0045a530
push 0xec
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov dword [esp + 0x78], ebp
je 0x489f71
push 0
push 0x993
push 0x992
push fcn.00421c30
push 0
push 0
push esi
push 0xcb
push pe_nt_image_headers32
mov ecx, eax
call fcn.00422990
jmp 0x489f73
xor eax, eax
mov dword [esi + 0x22c], eax
mov dword [eax + 0xac], 0x994
mov eax, dword [esi + 0x22c]
push ebp
push esi
mov dword [esp + 0x80], edi
mov byte [eax + 0x58], 0x3c
mov ecx, dword [esi + 0x22c]
mov dword [ecx + 0xa4], ebp
mov edx, dword [esi + 0x22c]
mov dword [edx + 0xc0], ebp
mov ecx, dword [esi + 0x22c]
call fcn.0045a530
jmp 0x489fc0
mov ebp, 1
push 0xe4
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x20], eax
test eax, eax
mov dword [esp + 0x78], 2
je 0x489ffb
push 0x14
push 0x981
push 0
push 0
push 0x8d
push 0x123
mov ecx, eax
call fcn.00423d00
jmp 0x489ffd
xor eax, eax
mov dword [esi + 0x240], eax
mov word [eax + 0xd2], 4
mov eax, dword [esi + 0x240]
mov ecx, 0xfffffffa
push ebp
push esi
mov eax, dword [eax + 0x9c]
mov dword [esp + 0x80], 0xffffffff
mov ebx, dword [eax + 0x30]
add ebx, ecx
mov dword [eax + 0x30], ebx
mov edx, dword [esi + 0x240]
mov eax, dword [edx + 0xa0]
mov edi, dword [eax + 0x30]
add edi, ecx
mov dword [eax + 0x30], edi
mov eax, dword [esi + 0x240]
mov byte [eax + 0x58], 9
mov ecx, dword [esi + 0x240]
call fcn.0045a530
mov eax, dword [0xcc4aec]
xor edi, edi
test eax, eax
jle 0x48a094
mov ebp, 0xcc4890
mov ebx, 0xcc4840
mov ecx, dword [ebx]
push ecx
mov ecx, dword [esi + 0x240]
push ebp
call fcn.00424060
mov eax, dword [0xcc4aec]
inc edi
add ebx, 4
add ebp, 0x1e
cmp edi, eax
jl 0x48a070
mov ebp, 1
mov ecx, dword [esi + 0x240]
push 0
push str._new_
call fcn.00424060
mov eax, dword [esi + 0xa0]
xor ecx, ecx
test eax, eax
mov dword [esp + 0x1c], ecx
jle 0x48a239
mov dword [esp + 0x18], ecx
mov edx, dword [esi + 0x9c]
lea eax, [edx + ecx*4]
mov edx, dword [edx + ecx*4]
cmp dword [edx + 4], 9
jne 0x48a226
mov ebx, edx
call fcn.004cc210
mov edi, eax
call fcn.004cae10
mov ebp, eax
mov al, byte [0xd57532]
push 0
mov byte [esp + 0x24], al
call fcn.004cc220
push 6
call fcn.004cae20
push 0
call fcn.004cae50
add esp, 0xc
lea ecx, [esp + 0x24]
lea edx, [esp + 0x14]
add ebx, 8
push ecx
lea eax, [esp + 0x14]
push edx
push eax
mov ecx, ebx
call fcn.004cef40
push eax
call fcn.004cd510
push edi
call fcn.004cc220
push ebp
call fcn.004cae20
mov ecx, dword [esp + 0x38]
push ecx
call fcn.004cae50
mov ecx, dword [esp + 0x30]
xor eax, eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x54], eax
imul eax, ecx
shl eax, 1
push eax
call fcn.004ddf8e
mov ecx, dword [esp + 0x30]
mov ebp, eax
imul ecx, dword [esp + 0x34]
shl ecx, 1
mov edx, ecx
xor eax, eax
mov edi, ebp
add esp, 0x20
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov ecx, dword [0x5470a8]
lea eax, [esp + 0x30]
push eax
push ecx
push 0
push 0
mov ecx, ebx
call fcn.004cef40
mov edx, dword [esp + 0x20]
push eax
push edx
push ebp
call fcn.004ccce0
push 0xb8
call fcn.004ddf8e
add esp, 0x20
mov dword [esp + 0x28], eax
test eax, eax
mov dword [esp + 0x78], 3
je 0x48a1ee
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push 0xffffffffffffffff
push ebp
push 0
push ecx
mov ecx, dword [esp + 0x28]
push edx
push esi
mov edx, dword [esp + ecx + 0x58]
mov ecx, dword [esp + ecx + 0x68]
add edx, 0x1e
add ecx, 0x52
push edx
push ecx
mov ecx, eax
call fcn.0045d3c0
jmp 0x48a1f0
xor eax, eax
mov ebx, dword [esp + 0x18]
push 1
add ebx, 4
push esi
mov ecx, eax
mov dword [esp + 0x80], 0xffffffff
mov dword [esp + 0x20], ebx
mov byte [eax + 0x58], 9
call fcn.0045a530
push ebp
call fcn.004ddac0
mov ecx, dword [esp + 0x20]
add esp, 4
mov ebp, 1
mov eax, dword [esi + 0xa0]
inc ecx
cmp ecx, eax
mov dword [esp + 0x1c], ecx
jl 0x48a0be
push 0xc0
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x28], eax
test eax, eax
mov dword [esp + 0x78], 4
je 0x48a287
mov dl, byte [0x5474fb]
push 0
push 0
push edx
push 0x74166c
push 0x386
push ebp
push 0x869
push 0x867
push esi
push 0x6e
push 0x80
mov ecx, eax
call fcn.00423750
jmp 0x48a289
xor eax, eax
mov ebx, 0x868
mov dword [esi + 0x244], eax
mov dword [eax + 0xa8], ebx
mov eax, dword [esi + 0x244]
mov edi, 0x86a
push ebp
mov dword [eax + 0xac], edi
mov ecx, dword [esi + 0x244]
push esi
mov dword [esp + 0x80], 0xffffffff
mov byte [ecx + 0x58], 9
mov ecx, dword [esi + 0x244]
call fcn.0045a530
push 0xc0
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x28], eax
test eax, eax
mov dword [esp + 0x78], 5
je 0x48a31e
mov dl, byte [0xcc931d]
push 0
push 0
push edx
push 0x74166c
push 0x386
push ebp
push 0x869
push 0x867
push esi
push 0xf2
push 0x80
mov ecx, eax
call fcn.00423750
jmp 0x48a320
xor eax, eax
mov dword [esi + 0x248], eax
mov dword [eax + 0xa8], ebx
mov eax, dword [esi + 0x248]
push ebp
push esi
mov dword [esp + 0x80], 0xffffffff
mov dword [eax + 0xac], edi
mov ecx, dword [esi + 0x248]
mov byte [ecx + 0x58], 9
mov ecx, dword [esi + 0x248]
call fcn.0045a530
push 0xe4
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x28], eax
test eax, eax
mov dword [esp + 0x78], 6
je 0x48a394
push 0x1e
push 0x50
push 0x97f
push 0
push 0
push 0x8d
push 0x7a
mov ecx, eax
call fcn.004c8b10
jmp 0x48a396
xor eax, eax
mov dword [esi + 0x24c], eax
or ebx, 0xffffffff
mov byte [eax + 0x58], 0x63
mov ecx, dword [esi + 0x24c]
push ebp
push esi
mov dword [esp + 0x80], ebx
call fcn.0045a530
mov eax, dword [0xcc4ae8]
xor edi, edi
test eax, eax
jle 0x48a3e5
mov ebx, 0xcc3580
mov ecx, dword [esi + 0x24c]
push 0
push ebx
call fcn.004c8e90
mov eax, dword [0xcc4ae8]
inc edi
add ebx, 0x3c
cmp edi, eax
jl 0x48a3c7
or ebx, 0xffffffff
mov ecx, dword [esi + 0x24c]
push 0
push 0x74166c
call fcn.004c9200
push 0xec
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x28], eax
test eax, eax
mov dword [esp + 0x78], 7
je 0x48a43a
push 0
push fcn.00421c30
push 0
push 0
push esi
push 0xd3
push 0xd2
push 0x8d
push 0x7a
mov ecx, eax
call fcn.00422b10
jmp 0x48a43c
xor eax, eax
mov dword [esi + 0x230], eax
mov byte [eax + 0x58], 9
mov edx, dword [esi + 0x230]
push ebp
push esi
mov dword [esp + 0x80], ebx
mov dword [edx + 0xa4], 2
mov eax, dword [esi + 0x230]
mov dword [eax + 0xc0], ebp
mov ecx, dword [esi + 0x230]
call fcn.0045a530
push 0xec
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x28], eax
test eax, eax
mov dword [esp + 0x78], 8
je 0x48a4bc
push 0
push 0x9a9
push 0x9a8
push fcn.00421c30
push 0
push 0
push esi
push 0xf2
push 0x12c
mov ecx, eax
call fcn.00422990
jmp 0x48a4be
xor eax, eax
mov dword [esi + 0x234], eax
mov dword [eax + 0xac], 0x9aa
mov ecx, dword [esi + 0x234]
push ebp
push esi
mov dword [esp + 0x80], ebx
mov byte [ecx + 0x58], 9
mov edx, dword [esi + 0x234]
mov dword [edx + 0xa4], 3
mov eax, dword [esi + 0x234]
mov dword [eax + 0xc0], ebp
mov ecx, dword [esi + 0x234]
call fcn.0045a530
push 0x1cc
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x28], eax
test eax, eax
mov dword [esp + 0x78], 9
je 0x48a552
push 0
push 0
push ebp
push 0x386
push ebp
push 0x10
push 0
push 0x988
push 0x988
push esi
push 0x91
push 0xd5
mov ecx, eax
call fcn.0042ac40
jmp 0x48a554
xor eax, eax
mov dword [esi + 0x224], eax
mov byte [eax + 0xee], 8
mov ecx, dword [esi + 0x224]
mov dword [esp + 0x78], ebx
mov bl, 0x32
push ebp
mov byte [ecx + 0xef], 5
mov edx, dword [esi + 0x224]
push esi
mov byte [edx + 0x58], bl
mov eax, dword [esi + 0x224]
mov dword [eax + 0xb8], ebp
mov ecx, dword [esi + 0x224]
call fcn.0045a530
push 0x1cc
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x28], eax
test eax, eax
mov dword [esp + 0x78], 0xa
je 0x48a5e0
push 0
push 0
push ebp
push 0x386
push ebp
push 0x10
push 0
push 0x988
push 0x988
push esi
push 0xc1
push 0xd4
mov ecx, eax
call fcn.0042ac40
jmp 0x48a5e2
xor eax, eax
mov dword [esi + 0x228], eax
mov byte [eax + 0xee], 8
mov ecx, dword [esi + 0x228]
or edi, 0xffffffff
push ebp
push esi
mov byte [ecx + 0xef], 5
mov edx, dword [esi + 0x228]
mov dword [esp + 0x80], edi
mov byte [edx + 0x58], bl
mov eax, dword [esi + 0x228]
mov dword [eax + 0xb8], ebp
mov ecx, dword [esi + 0x228]
call fcn.0045a530
push 0xec
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x28], eax
test eax, eax
mov dword [esp + 0x78], 0xb
je 0x48a66e
push 0
push 0x996
push 0x997
push fcn.00421c30
push 0
push 0
push esi
push 0xe3
push 0xea
mov ecx, eax
call fcn.00422990
jmp 0x48a670
xor eax, eax
mov dword [esi + 0x238], eax
mov dword [eax + 0xac], 0x995
mov ecx, dword [esi + 0x238]
push ebp
push esi
mov dword [esp + 0x80], edi
mov byte [ecx + 0x58], bl
mov edx, dword [esi + 0x238]
mov dword [edx + 0xa4], 4
mov eax, dword [esi + 0x238]
mov dword [eax + 0xc0], ebp
mov ecx, dword [esi + 0x238]
call fcn.0045a530
push 0xec
call fcn.004ddf8e
add esp, 4
mov dword [esp + 0x28], eax
test eax, eax
mov dword [esp + 0x78], 0xc
je 0x48a6ff
push 0
push 0x993
push 0x992
push fcn.00421c30
push 0
push 0
push esi
push 0xe2
push 0x131
mov ecx, eax
call fcn.00422990
jmp 0x48a701
xor eax, eax
mov dword [esi + 0x23c], eax
mov dword [eax + 0xac], 0x994
mov ecx, dword [esi + 0x23c]
push ebp
push esi
mov dword [esp + 0x80], edi
mov byte [ecx + 0x58], bl
mov edx, dword [esi + 0x23c]
mov dword [edx + 0xa4], 5
mov eax, dword [esi + 0x23c]
mov dword [eax + 0xc0], ebp
mov ecx, dword [esi + 0x23c]
call fcn.0045a530
lea ecx, [esp + 0x2c]
push 2
lea edx, [esp + 0x18]
push ecx
lea eax, [esp + 0x18]
push edx
push eax
push 0x98
push str.Click_to_edit_Profanity_List
push ebp
call fcn.00443020
mov eax, dword [esp + 0x2c]
add esp, 0x1c
mov ecx, eax
and ecx, reloc.DSOUND.dll_DirectSoundCreate
jns 0x48a781
dec ecx
or ecx, 0xfffffffe
inc ecx
cmp ecx, ebp
jne 0x48a78a
inc eax
mov dword [esp + 0x10], eax
imul eax, dword [esp + 0x14]
shl eax, 1
push eax
call fcn.004ddf8e
mov ecx, dword [esp + 0x14]
mov ebx, eax
imul ecx, dword [esp + 0x18]
shl ecx, 1
mov edx, ecx
xor eax, eax
mov edi, ebx
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
lea edx, [esp + 0x64]
and ecx, 3
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x14]
xor edi, edi
push edi
push edi
mov ecx, dword [esp + 0x20]
push 2
push edx
push eax
push ebx
push 0x98
push str.Click_to_edit_Profanity_List
push 0x386
push ebp
push edi
push edi
mov dword [esp + 0x94], edi
mov dword [esp + 0x98], edi
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], ecx
call fcn.004424b0
push 0xb8
call fcn.004ddf8e
add esp, 0x38
mov dword [esp + 0x28], eax
cmp eax, edi
mov dword [esp + 0x78], 0xd
je 0x48a83d
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push 0xffffffffffffffff
push ebx
push edi
push ecx
push edx
push esi
push 0xa0
push 0x84
mov ecx, eax
call fcn.0045d3c0
jmp 0x48a83f
xor eax, eax
mov dword [esi + 0x250], eax
mov byte [eax + 0x58], 9
mov ecx, dword [esi + 0x250]
push ebp
push esi
mov dword [esp + 0x80], 0xffffffff
call fcn.0045a530
push ebx
call fcn.004ddac0
mov ecx, dword [esp + 0x74]
add esp, 4
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret