Function at 0x4edba0
Capabilities:
Encode data using xor
Hash data with md5
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x224
mov eax, dword [0x56a8e0]
xor eax, esp
mov dword [esp + 0x220], eax
push ebx
mov ebx, dword [esp + 0x230]
or eax, 0xffffffff
push ebp
mov ebp, dword [esp + 0x230]
push esi
xor esi, esi
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], eax
mov eax, ebx
sub eax, esi
push edi
mov dword [esp + 0xa0], ebp
mov dword [esp + 0x14], 0x3e8
mov dword [esp + 0x68], esi
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x80], esi
mov dword [esp + 0x84], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], esi
mov dword [esp + 0x90], esi
mov dword [esp + 0x94], esi
mov dword [esp + 0x44], esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x64], esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], esi
mov dword [esp + 0x18], esi
mov dword [esp + 0x10], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x88], esi
mov dword [esp + 0x8c], esi
mov dword [esp + 0x74], esi
mov dword [esp + 0x78], esi
je 0x4edcca
sub eax, 1
mov eax, dword [ebp + 0x24]
jne 0x4ef616
mov dword [ebp + 0x198], eax
cmp eax, 0x3f2
je 0x4ef616
cmp eax, 0x3e8
je 0x4ef616
cmp eax, 0xfffffc0f
je 0x4ef616
cmp eax, 0xfffffc0c
je 0x4ef616
cmp eax, 0xfffffc09
je 0x4ef616
cmp eax, 0xfffffc07
je 0x4ef616
cmp eax, 0xfffffc17
je 0x4edcca
push eax
push 0x56f768
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
push ebp
mov dword [esp + 0xbc], esi
mov dword [esp + 0xb8], esi
mov dword [esp + 0xa8], 0x67452301
mov dword [esp + 0xac], 0xefcdab89
mov dword [esp + 0xb0], 0x98badcfe
mov dword [esp + 0xb4], 0x10325476
call fcn.004e2340
inc dword [ebp + 0x180]
add esp, 4
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], edx
mov byte [esp + 0x20c], 0
mov byte [esp + 0xfc], 0
mov byte [esp + 0x1e8], 0
cmp dword [ebp + 0x148], esi
jne 0x4edd71
push esi
mov ecx, ebp
call fcn.004de730
add esp, 4
mov dword [ebp + 0x148], eax
cmp eax, esi
jne 0x4edd71
mov eax, 0xfffffc17
mov dword [ebp + 0x24], eax
cmp ebx, esi
jne 0x4ef616
mov dword [ebp + 0x198], eax
jmp 0x4ef616
mov esi, ebp
call fcn.004de9f0
mov edi, dword [esp + 0x23c]
mov esi, dword [ebp + 0x148]
xor ebx, ebx
cmp edi, 1
jne 0x4eddbc
push esi
call fcn.004b3007
mov esi, eax
add esp, 4
mov ebx, esi
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4edda0
mov ecx, dword [str..bak]
sub eax, edx
mov dword [eax + esi - 4], ecx
mov dl, byte [0x56f774]
mov byte [eax + esi], dl
push 0x56f778
push esi
call fcn.005047a9
add esp, 8
mov dword [esp + 0x1c], eax
test edi, edi
jne 0x4ede1e
test eax, eax
jne 0x4edf0c
mov eax, dword [ebp + 0x148]
push eax
call fcn.004b3007
mov esi, eax
add esp, 4
mov ebx, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4eddf0
mov ecx, dword [str..txt]
sub eax, edx
mov dword [eax + esi - 4], ecx
mov dl, byte [0x56f780]
push 0x56f784
push esi
mov byte [eax + esi], dl
call fcn.005047a9
add esp, 8
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x4edee9
call fcn.00499e50
test edi, edi
jne 0x4ede76
cmp dword [eax], 2
je 0x4ede4c
call fcn.00499e50
mov eax, dword [eax]
push eax
push str.u_d
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
mov eax, dword [ebp + 0x180]
cmp eax, 1
jle 0x4ede6d
cmp eax, 0xa
jge 0x4ede6d
push esi
push str.v_s
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
mov dword [ebp + 0x24], 0xfffffc17
jmp 0x4edeb1
cmp dword [eax], 2
je 0x4edeb1
cmp dword [ebp + 0x24], 0xfffffc17
jne 0x4ede99
push 0xfffffc17
push 0x56f798
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
call fcn.00499e50
mov ecx, dword [eax]
push ecx
push str.zR_d
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
test ebx, ebx
je 0x4ededb
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4edec0
sub eax, edx
push eax
push 0
push ebx
call fcn.004948b0
push ebx
call fcn.004934fd
add esp, 0x10
mov edx, dword [esp + 0x23c]
inc edx
push edx
jmp 0x4ef60d
cmp edi, 1
jne 0x4edf0c
cmp dword [ebp + 0x24], 0xfffffc17
jne 0x4edf0c
push 0xfffffc17
push str.zL_d
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
test ebx, ebx
je 0x4edf30
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4edf15
sub eax, edx
push eax
push 0
push ebx
call fcn.004948b0
push ebx
call fcn.004934fd
add esp, 0x10
mov edi, dword [esp + 0x1c]
push edi
lea eax, [esp + 0x124]
push 0xc8
xor ebx, ebx
push eax
mov dword [esp + 0x54], ebx
call fcn.00505d92
add esp, 0xc
test eax, eax
je 0x4eeada
mov esi, 0xfffff81a
lea ecx, [ecx]
lea eax, [esp + 0x120]
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4edf70
sub eax, edx
je 0x4edf9a
lea edx, [esp + 0x120]
dec edx
mov cl, byte [edx + eax]
cmp cl, 0xd
je 0x4edf90
cmp cl, 0xa
jne 0x4edf9a
sub eax, 1
mov byte [edx + eax + 1], 0
jne 0x4edf83
push 0x11
lea ecx, [esp + 0x124]
push str.Application____:
push ecx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee012
cmp dword [esp + 0x24], eax
jne 0x4ee005
mov ecx, dword [0x569258]
lea eax, [esp + 0x131]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4edfe8
test dl, dl
je 0x4edfe4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4edfe8
add eax, 2
add ecx, 2
test dl, dl
jne 0x4edfc8
xor eax, eax
jmp 0x4edfed
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4ee005
mov eax, 1
add ebx, eax
or dword [esp + 0x10], eax
mov dword [esp + 0x24], eax
jmp 0x4ee9f4
mov dword [esp + 0x14], 0xfffffc14
jmp 0x4ee9f4
push 0x11
lea edx, [esp + 0x124]
push str.Part_Number____:
push edx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee089
cmp dword [esp + 0x20], eax
jne 0x4ee07c
mov ecx, dword [str.PV03_AS_001]
lea eax, [esp + 0x131]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4ee060
test dl, dl
je 0x4ee05c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4ee060
add eax, 2
add ecx, 2
test dl, dl
jne 0x4ee040
xor eax, eax
jmp 0x4ee065
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4ee07c
inc ebx
or dword [esp + 0x10], 2
mov dword [esp + 0x20], 1
jmp 0x4ee9f4
mov dword [esp + 0x14], 0xfffffc13
jmp 0x4ee9f4
push 0x11
lea eax, [esp + 0x124]
push str.Activation_Key1:
push eax
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee0ea
cmp dword [esp + 0x44], eax
je 0x4ee0b7
mov dword [esp + 0x14], 0xfffff82f
jmp 0x4ee9f4
cmp dword [esp + 0x50], 0
je 0x4ee0cb
mov dword [esp + 0x14], 0xfffff816
jmp 0x4ee9f4
lea ecx, [esp + 0x131]
push ecx
call fcn.004b3007
add esp, 4
inc ebx
or dword [esp + 0x10], 4
mov dword [esp + 0x44], eax
jmp 0x4ee9f4
push 0x11
lea edx, [esp + 0x124]
push str.Activation_KeyC:
push edx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee14e
cmp dword [esp + 0x44], eax
je 0x4ee118
mov dword [esp + 0x14], 0xfffff81f
jmp 0x4ee9f4
cmp dword [esp + 0x50], 0
je 0x4ee12c
mov dword [esp + 0x14], 0xfffff81e
jmp 0x4ee9f4
lea eax, [esp + 0x131]
push eax
call fcn.004b3007
add esp, 4
inc ebx
or dword [esp + 0x10], 0x8000
mov dword [esp + 0x50], eax
jmp 0x4ee9f4
push 0x11
lea ecx, [esp + 0x124]
push str.Activation_Key2:
push ecx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee1c0
cmp byte [esp + 0xfc], al
jne 0x4ee1b3
lea eax, [esp + 0x131]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ee180
sub eax, edx
cmp eax, 4
ja 0x4ee1b3
push 5
lea edx, [esp + 0x135]
push edx
lea eax, [esp + 0x104]
push eax
call fcn.00505930
add esp, 0xc
inc ebx
or dword [esp + 0x10], 8
jmp 0x4ee9f4
mov dword [esp + 0x14], 0xfffff82e
jmp 0x4ee9f4
push 0x11
lea ecx, [esp + 0x124]
push str.Activation_Key3:
push ecx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee227
cmp dword [esp + 0x64], eax
je 0x4ee1ee
mov dword [esp + 0x14], 0xfffff82d
jmp 0x4ee9f4
lea edx, [esp + 0x131]
push edx
call fcn.004ab9bf
add esp, 4
mov dword [esp + 0x64], eax
test eax, eax
jne 0x4ee21c
cmp byte [esp + 0xfc], al
je 0x4ee21c
mov dword [esp + 0x14], 0xfffff82c
jmp 0x4ee9f4
inc ebx
or dword [esp + 0x10], 0x10
jmp 0x4ee9f4
push 0x11
lea eax, [esp + 0x124]
push str.Activation_Key4:
push eax
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee295
cmp byte [esp + 0x1e8], al
jne 0x4ee288
lea eax, [esp + 0x131]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ee255
sub eax, edx
cmp eax, 0x20
ja 0x4ee288
push 0x21
lea ecx, [esp + 0x135]
push ecx
lea edx, [esp + 0x1f0]
push edx
call fcn.00505930
add esp, 0xc
inc ebx
or dword [esp + 0x10], 0x20
jmp 0x4ee9f4
mov dword [esp + 0x14], 0xfffff82b
jmp 0x4ee9f4
push 0x11
lea eax, [esp + 0x124]
push str.License_End____:
push eax
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee36a
mov ecx, dword [esp + 0x54]
or ecx, dword [esp + 0x58]
je 0x4ee2cb
mov dword [esp + 0x14], 0xfffff82a
jmp 0x4ee9f4
mov ecx, 0x56f850
lea eax, [esp + 0x131]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4ee2f7
test dl, dl
je 0x4ee2f3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4ee2f7
add eax, 2
add ecx, 2
test dl, dl
jne 0x4ee2d7
xor eax, eax
jmp 0x4ee2fc
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4ee30d
mov dword [esp + 0x14], 0xfffffc07
jmp 0x4ee9f4
push 0xa
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x139]
push eax
call fcn.004b205b
cdq
add esp, 0xc
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], edx
test edx, edx
jg 0x4ee35c
jl 0x4ee337
test eax, eax
ja 0x4ee35c
lea ecx, [esp + 0x131]
push ecx
push str.zB_s
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
mov dword [esp + 0x14], 0xfffffc11
jmp 0x4ee9f4
inc ebx
or dword [esp + 0x10], 0x80
jmp 0x4ee9f4
push 0x11
lea edx, [esp + 0x124]
push str.Subscript._End_:
push edx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee3d5
mov eax, dword [esp + 0x80]
or eax, dword [esp + 0x84]
je 0x4ee3a2
mov dword [esp + 0x14], 0xfffff817
jmp 0x4ee9f4
push 0xa
lea ecx, [esp + 0x30]
push ecx
lea edx, [esp + 0x139]
push edx
call fcn.004b205b
cdq
add esp, 0xc
or dword [esp + 0x10], 0x400000
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], edx
jmp 0x4ee9f4
push 0x11
lea eax, [esp + 0x124]
push str.License_Id_____:
push eax
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee428
cmp dword [esp + 0x68], eax
je 0x4ee403
mov dword [esp + 0x14], 0xfffff829
jmp 0x4ee9f4
push 0xa
lea ecx, [esp + 0x30]
push ecx
lea edx, [esp + 0x139]
push edx
call fcn.004b205b
add esp, 0xc
or dword [esp + 0x10], 0x40
mov dword [esp + 0x68], eax
jmp 0x4ee9f4
push 0x11
lea eax, [esp + 0x124]
push str.Grace_Period___:
push eax
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee4fe
mov ecx, dword [esp + 0x5c]
or ecx, dword [esp + 0x60]
je 0x4ee45e
mov dword [esp + 0x14], 0xfffff828
jmp 0x4ee9f4
push 0xa
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x139]
push eax
call fcn.004b205b
cdq
add esp, 0xc
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], edx
test edx, edx
jg 0x4ee4f0
jl 0x4ee488
test eax, eax
ja 0x4ee4f0
cmp dword [esp + 0x14], 0x3e8
jne 0x4ee49a
mov dword [esp + 0x14], 0xfffffc10
mov ecx, 0x56f898
lea eax, [esp + 0x131]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4ee4c6
test dl, dl
je 0x4ee4c2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4ee4c6
add eax, 2
add ecx, 2
test dl, dl
jne 0x4ee4a6
xor eax, eax
jmp 0x4ee4cb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4ee9f4
lea ecx, [esp + 0x131]
push ecx
push str.zC_s
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
jmp 0x4ee9f4
inc ebx
or dword [esp + 0x10], 0x100
jmp 0x4ee9f4
push 0x11
lea edx, [esp + 0x124]
push str.Latest_Check___:
push edx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee58d
mov eax, dword [esp + 0x30]
or eax, dword [esp + 0x34]
je 0x4ee530
mov dword [esp + 0x14], 0xfffff827
jmp 0x4ee9f4
push 0xa
lea ecx, [esp + 0x30]
push ecx
lea edx, [esp + 0x139]
push edx
call fcn.004b205b
cdq
add esp, 0xc
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
test edx, edx
jg 0x4ee57f
jl 0x4ee55a
test eax, eax
ja 0x4ee57f
lea eax, [esp + 0x131]
push eax
push str.zD_s
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
mov dword [esp + 0x14], 0xfffffc0d
jmp 0x4ee9f4
inc ebx
or dword [esp + 0x10], 0x200
jmp 0x4ee9f4
push 0x11
lea ecx, [esp + 0x124]
push str.Latest_Cnxe____:
push ecx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee621
mov edx, dword [esp + 0x90]
or edx, dword [esp + 0x94]
je 0x4ee5c5
mov dword [esp + 0x14], 0xfffff821
jmp 0x4ee9f4
push 0xa
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x139]
push ecx
call fcn.004b205b
cdq
add esp, 0xc
mov dword [esp + 0x90], eax
or eax, edx
mov dword [esp + 0x94], edx
jne 0x4ee614
lea edx, [esp + 0x131]
push edx
push str.zE_s
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
mov dword [esp + 0x14], 0xfffff820
jmp 0x4ee9f4
or dword [esp + 0x10], 0x4000
jmp 0x4ee9f4
push 0x11
lea eax, [esp + 0x124]
push str.Format_________:
push eax
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee670
cmp dword [esp + 0x4c], eax
jne 0x4ee663
lea ecx, [esp + 0x131]
push ecx
call fcn.004b3007
add esp, 4
or dword [esp + 0x10], 0x800
mov dword [esp + 0x4c], eax
jmp 0x4ee9f4
mov dword [esp + 0x14], 0xfffff822
jmp 0x4ee9f4
push 0x11
lea edx, [esp + 0x124]
push str.Computer_Id____:
push edx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee6cd
cmp dword [esp + 0x18], eax
jne 0x4ee6c0
lea eax, [esp + 0x131]
push eax
mov eax, dword [esp + 0x50]
push ebp
call fcn.004dea60
add esp, 8
test eax, eax
je 0x4ee6c0
inc ebx
or dword [esp + 0x10], 0x400
mov dword [esp + 0x18], 1
jmp 0x4ee9f4
mov dword [esp + 0x14], 0xfffffc12
jmp 0x4ee9f4
push 0x11
lea ecx, [esp + 0x124]
push str.Key_Id_________:
push ecx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee746
cmp dword [esp + 0x28], eax
je 0x4ee6fb
mov dword [esp + 0x14], 0xfffff826
jmp 0x4ee9f4
lea edx, [esp + 0x131]
push edx
call fcn.004ab9bf
add esp, 4
mov dword [esp + 0x28], eax
test eax, eax
jne 0x4ee738
lea eax, [esp + 0x131]
push eax
push str.zF_s
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
mov dword [esp + 0x14], 0xfffff825
jmp 0x4ee9f4
inc ebx
or dword [esp + 0x10], 0x1000
jmp 0x4ee9f4
push 0x11
lea ecx, [esp + 0x124]
push str.CM_URL_________:
push ecx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee795
cmp dword [esp + 0x7c], eax
jne 0x4ee788
lea edx, [esp + 0x131]
push edx
call fcn.004b3007
add esp, 4
or dword [esp + 0x10], 0x10000
mov dword [esp + 0x7c], eax
jmp 0x4ee9f4
mov dword [esp + 0x14], 0xfffff81d
jmp 0x4ee9f4
push 0x11
lea eax, [esp + 0x124]
push str.CM_Frequency___:
push eax
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee814
cmp dword [esp + 0x70], eax
jl 0x4ee7c3
mov dword [esp + 0x14], 0xfffff81c
jmp 0x4ee9f4
push 0xa
lea ecx, [esp + 0x30]
push ecx
lea edx, [esp + 0x139]
push edx
call fcn.004b205b
add esp, 0xc
mov dword [esp + 0x70], eax
test eax, eax
jge 0x4ee807
lea eax, [esp + 0x131]
push eax
push str.zS_s
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
mov dword [esp + 0x14], 0xfffffc06
jmp 0x4ee9f4
or dword [esp + 0x10], 0x20000
jmp 0x4ee9f4
push 0x11
lea ecx, [esp + 0x124]
push str.Latest_CM______:
push ecx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee8a0
mov edx, dword [esp + 0x88]
or edx, dword [esp + 0x8c]
je 0x4ee848
mov dword [esp + 0x14], esi
jmp 0x4ee9f4
push 0xa
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x139]
push ecx
call fcn.004b205b
cdq
add esp, 0xc
mov dword [esp + 0x88], eax
or eax, edx
mov dword [esp + 0x8c], edx
jne 0x4ee893
lea edx, [esp + 0x131]
push edx
push str.zT_s
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
mov dword [esp + 0x14], esi
jmp 0x4ee9f4
or dword [esp + 0x10], 0x40000
jmp 0x4ee9f4
push 0x11
lea eax, [esp + 0x124]
push str.CM_Counter_____:
push eax
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee917
cmp dword [esp + 0x74], eax
je 0x4ee8ca
mov dword [esp + 0x14], esi
jmp 0x4ee9f4
push 0xa
lea ecx, [esp + 0x30]
push ecx
lea edx, [esp + 0x139]
push edx
call fcn.004b205b
add esp, 0xc
mov dword [esp + 0x74], eax
test eax, eax
jne 0x4ee90a
lea eax, [esp + 0x131]
push eax
push str.zU_s
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
mov dword [esp + 0x14], esi
jmp 0x4ee9f4
or dword [esp + 0x10], 0x80000
jmp 0x4ee9f4
push 0x11
lea ecx, [esp + 0x124]
push str.CM_Options_____:
push ecx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee990
cmp dword [esp + 0x6c], eax
jl 0x4ee945
mov dword [esp + 0x14], 0xfffff819
jmp 0x4ee9f4
push 0xa
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x139]
push eax
call fcn.004b205b
add esp, 0xc
mov dword [esp + 0x6c], eax
test eax, eax
jge 0x4ee986
lea ecx, [esp + 0x131]
push ecx
push str.zaA_s
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
mov dword [esp + 0x14], 0xfffff819
jmp 0x4ee9f4
or dword [esp + 0x10], 0x100000
jmp 0x4ee9f4
push 0x11
lea edx, [esp + 0x124]
push str.Qualifier______:
push edx
call fcn.00505250
add esp, 0xc
test eax, eax
jne 0x4ee9d9
cmp dword [esp + 0x78], eax
jne 0x4ee9cf
lea eax, [esp + 0x131]
push eax
call fcn.004b3007
add esp, 4
or dword [esp + 0x10], 0x200000
mov dword [esp + 0x78], eax
jmp 0x4ee9f4
mov dword [esp + 0x14], 0xfffff818
jmp 0x4ee9f4
push 0x11
lea ecx, [esp + 0x124]
push str.Signature______:
push ecx
call fcn.00505250
add esp, 0xc
test eax, eax
je 0x4eea5d
mov al, byte [esp + 0x120]
test al, al
je 0x4eea35
cmp al, 0x2b
je 0x4eea35
lea eax, [esp + 0x120]
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4eea10
sub eax, edx
lea edx, [esp + 0x120]
push edx
lea esi, [esp + 0xa8]
call fcn.004e82f0
add esp, 4
mov esi, 0xfffff81a
mov edi, dword [esp + 0x1c]
push edi
lea eax, [esp + 0x124]
push 0xc8
push eax
call fcn.00505d92
add esp, 0xc
test eax, eax
jne 0x4edf60
mov dword [esp + 0x48], ebx
jmp 0x4eeada
cmp byte [esp + 0x20c], 0
mov dword [esp + 0x48], ebx
jne 0x4eeaac
lea eax, [esp + 0x131]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4eea75
sub eax, edx
cmp eax, 0x20
jne 0x4eeaac
push 0x21
lea ecx, [esp + 0x135]
push ecx
lea edx, [esp + 0x214]
push edx
call fcn.00505930
inc ebx
add esp, 0xc
or dword [esp + 0x10], 0x2000
mov dword [esp + 0x48], ebx
jmp 0x4eeac0
mov dword [esp + 0x14], 0xfffff824
jmp 0x4eeac0
push edi
lea eax, [esp + 0x124]
push 0xc8
push eax
call fcn.00505d92
add esp, 0xc
test eax, eax
jne 0x4eeac0
push edi
call fcn.0050671d
add esp, 4
test eax, eax
jne 0x4eeaff
call fcn.00499e50
mov ecx, dword [eax]
push ecx
push str.y_d
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 8
mov edx, dword [esp + 0x1c]
push edx
call fcn.00497adb
mov eax, dword [esp + 0x18]
add esp, 4
cmp eax, 0x3e8
jne 0x4ef066
cmp ebx, 0xc
je 0x4eeb43
mov eax, dword [esp + 0x10]
push eax
push ebx
push str.zA_d__d
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 0xc
mov dword [esp + 0x14], 0xfffff823
jmp 0x4ef5fd
mov ecx, dword [0x56927c]
push ecx
call fcn.004ab9bf
add esp, 4
cmp dword [esp + 0x28], eax
je 0x4eeb65
mov dword [esp + 0x14], 0xfffffc09
jmp 0x4ef071
mov edi, dword [str.er7e]
lea edx, [esp + 0x104]
mov eax, edx
mov ebp, 1
sub ebp, eax
mov eax, 2
sub eax, edx
mov dword [esp + 0x18], eax
mov eax, 3
sub eax, edx
mov dword [esp + 0x20], eax
mov ebx, edi
mov eax, 4
xor ecx, ecx
sub ebx, edx
sub eax, edx
mov dword [esp + 0x24], eax
mov eax, 0xba2e8ba3
mul ecx
shr edx, 3
imul edx, edx, 0xb
lea esi, [esp + ecx + 0x104]
mov eax, ecx
sub eax, edx
movzx edx, byte [eax + 0x5700c8]
xor dl, byte [ebx + esi]
mov eax, 0xba2e8ba3
mov byte [esi], dl
lea edx, [esi + ebp]
mul edx
shr edx, 3
imul edx, edx, 0xb
mov eax, ecx
sub eax, edx
movzx edx, byte [eax + 0x5700c9]
xor dl, byte [edi + ecx + 1]
mov eax, dword [esp + 0x18]
mov byte [esi + 1], dl
lea edx, [eax + esi]
mov eax, 0xba2e8ba3
mul edx
shr edx, 3
imul edx, edx, 0xb
mov eax, ecx
sub eax, edx
movzx edx, byte [eax + 0x5700ca]
xor dl, byte [edi + ecx + 2]
mov eax, dword [esp + 0x20]
mov byte [esi + 2], dl
lea edx, [eax + esi]
mov eax, 0xba2e8ba3
mul edx
shr edx, 3
imul edx, edx, 0xb
mov eax, ecx
sub eax, edx
movzx edx, byte [eax + 0x5700cb]
xor dl, byte [edi + ecx + 3]
mov eax, dword [esp + 0x24]
mov byte [esi + 3], dl
lea edx, [eax + esi]
mov eax, 0xba2e8ba3
mul edx
shr edx, 3
imul edx, edx, 0xb
mov eax, ecx
sub eax, edx
movzx edx, byte [eax + 0x5700cc]
xor dl, byte [edi + ecx + 4]
add ecx, 5
cmp ecx, 0x19
mov byte [esi + 4], dl
jl 0x4eeba2
lea eax, [esp + 0x104]
push eax
mov eax, 0x19
lea esi, [esp + 0xa8]
call fcn.004e82f0
mov ecx, dword [0x569264]
lea eax, [esp + 0x109]
sub eax, ecx
mov dword [esp + 0x24], eax
mov eax, 0x1b
sub eax, ecx
mov dword [esp + 0x28], eax
lea eax, [esp + 0x10a]
sub eax, ecx
mov dword [esp + 0x2c], eax
mov eax, 0x1c
sub eax, ecx
mov dword [esp + 0x20], eax
lea eax, [esp + 0x10b]
sub eax, ecx
mov dword [esp + 0x3c], eax
mov eax, 0x1d
sub eax, ecx
mov dword [esp + 0x44], eax
mov esi, 0x19
lea edi, [esp + 0x108]
mov ebx, 0x1a
lea eax, [esp + 0x10c]
add esp, 4
sub esi, ecx
sub edi, ecx
sub ebx, ecx
sub eax, ecx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x18], 5
lea esp, [esp]
xor edx, edx
mov ebp, 0xb
lea eax, [ecx + esi]
div ebp
lea eax, [ecx + ebx]
movzx edx, byte [edx + 0x5700c8]
xor dl, byte [ecx]
mov byte [ecx + edi], dl
xor edx, edx
div ebp
movzx eax, byte [edx + 0x5700c8]
xor al, byte [ecx + 1]
mov edx, dword [esp + 0x20]
mov byte [ecx + edx], al
mov eax, dword [esp + 0x24]
add eax, ecx
xor edx, edx
div ebp
mov eax, dword [esp + 0x28]
movzx edx, byte [edx + 0x5700c8]
xor dl, byte [ecx + 2]
mov byte [ecx + eax], dl
mov edx, dword [esp + 0x1c]
lea eax, [ecx + edx]
xor edx, edx
div ebp
movzx eax, byte [edx + 0x5700c8]
xor al, byte [ecx + 3]
mov edx, dword [esp + 0x38]
mov byte [ecx + edx], al
mov eax, dword [esp + 0x40]
add eax, ecx
xor edx, edx
div ebp
mov eax, dword [esp + 0x3c]
add ecx, 5
movzx edx, byte [edx + 0x5700c8]
xor dl, byte [ecx - 1]
sub dword [esp + 0x18], 1
mov byte [ecx + eax - 5], dl
jne 0x4eed00
lea ecx, [esp + 0x104]
push ecx
lea eax, [ebp + 0xe]
lea esi, [esp + 0xa8]
call fcn.004e82f0
mov ecx, dword [0x56926c]
lea eax, [esp + 0x109]
sub eax, ecx
mov dword [esp + 0x40], eax
mov eax, 0x34
sub eax, ecx
mov dword [esp + 0x44], eax
lea eax, [esp + 0x10a]
sub eax, ecx
mov dword [esp + 0x3c], eax
mov eax, 0x35
sub eax, ecx
mov dword [esp + 0x24], eax
lea eax, [esp + 0x10b]
sub eax, ecx
mov dword [esp + 0x28], eax
mov eax, 0x36
sub eax, ecx
mov dword [esp + 0x2c], eax
mov esi, 0x32
lea edi, [esp + 0x108]
mov ebx, 0x33
lea eax, [esp + 0x10c]
add esp, 4
sub esi, ecx
sub edi, ecx
sub ebx, ecx
sub eax, ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 5
xor edx, edx
mov ebp, 0xb
lea eax, [esi + ecx]
div ebp
lea eax, [ebx + ecx]
movzx edx, byte [edx + 0x5700c8]
xor dl, byte [ecx]
mov byte [edi + ecx], dl
xor edx, edx
div ebp
movzx eax, byte [edx + 0x5700c8]
xor al, byte [ecx + 1]
mov edx, dword [esp + 0x3c]
mov byte [edx + ecx], al
mov eax, dword [esp + 0x40]
add eax, ecx
xor edx, edx
div ebp
mov eax, dword [esp + 0x38]
movzx edx, byte [edx + 0x5700c8]
xor dl, byte [ecx + 2]
mov byte [eax + ecx], dl
mov edx, dword [esp + 0x20]
lea eax, [edx + ecx]
xor edx, edx
div ebp
movzx eax, byte [edx + 0x5700c8]
xor al, byte [ecx + 3]
mov edx, dword [esp + 0x24]
mov byte [edx + ecx], al
mov eax, dword [esp + 0x28]
add eax, ecx
xor edx, edx
div ebp
mov eax, dword [esp + 0x1c]
add ecx, 5
movzx edx, byte [edx + 0x5700c8]
xor dl, byte [ecx - 1]
sub dword [esp + 0x18], 1
mov byte [eax + ecx - 5], dl
jne 0x4eee25
lea ecx, [esp + 0x104]
push ecx
lea eax, [ebp + 0xe]
lea esi, [esp + 0xa8]
call fcn.004e82f0
mov ecx, dword [0x569274]
lea eax, [esp + 0x109]
sub eax, ecx
mov dword [esp + 0x40], eax
mov eax, 0x4d
sub eax, ecx
mov dword [esp + 0x44], eax
lea eax, [esp + 0x10a]
sub eax, ecx
mov dword [esp + 0x3c], eax
mov eax, 0x4e
sub eax, ecx
mov dword [esp + 0x24], eax
lea eax, [esp + 0x10b]
sub eax, ecx
mov dword [esp + 0x28], eax
mov eax, 0x4f
sub eax, ecx
mov dword [esp + 0x2c], eax
mov esi, 0x4b
lea edi, [esp + 0x108]
mov ebp, 0x4c
lea eax, [esp + 0x10c]
add esp, 4
sub esi, ecx
sub edi, ecx
sub ebp, ecx
sub eax, ecx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 5
lea ebx, [ebx]
xor edx, edx
mov ebx, 0xb
lea eax, [esi + ecx]
div ebx
lea eax, [ecx + ebp]
movzx edx, byte [edx + 0x5700c8]
xor dl, byte [ecx]
mov byte [edi + ecx], dl
xor edx, edx
div ebx
movzx eax, byte [edx + 0x5700c8]
xor al, byte [ecx + 1]
mov edx, dword [esp + 0x3c]
mov byte [edx + ecx], al
mov eax, dword [esp + 0x40]
add eax, ecx
xor edx, edx
div ebx
mov eax, dword [esp + 0x38]
movzx edx, byte [edx + 0x5700c8]
xor dl, byte [ecx + 2]
mov byte [eax + ecx], dl
mov edx, dword [esp + 0x20]
lea eax, [edx + ecx]
xor edx, edx
div ebx
movzx eax, byte [edx + 0x5700c8]
xor al, byte [ecx + 3]
mov edx, dword [esp + 0x24]
mov byte [edx + ecx], al
mov eax, dword [esp + 0x28]
add eax, ecx
xor edx, edx
div ebx
mov eax, dword [esp + 0x1c]
add ecx, 5
movzx edx, byte [edx + 0x5700c8]
xor dl, byte [ecx - 1]
sub dword [esp + 0x18], 1
mov byte [eax + ecx - 5], dl
jne 0x4eef50
lea ecx, [esp + 0x104]
push ecx
lea eax, [ebx + 0xe]
lea esi, [esp + 0xa8]
call fcn.004e82f0
add esp, 4
mov edx, esi
lea ecx, [esp + 0x104]
call fcn.004e83a0
lea esi, [esp + 0x20c]
xor edi, edi
movzx edx, byte [esp + edi + 0x104]
push edx
lea eax, [esp + 0x20]
push 0x56f9e0
push eax
call fcn.00496d63
mov cl, byte [esi]
add esp, 0xc
inc esi
cmp byte [esp + 0x1c], cl
jne 0x4ef052
mov dl, byte [esi]
inc esi
cmp byte [esp + 0x1d], dl
jne 0x4ef052
inc edi
cmp edi, 0x10
jl 0x4ef012
mov ebp, dword [esp + 0xa0]
mov ebx, dword [esp + 0x48]
jmp 0x4ef071
mov ebp, dword [esp + 0xa0]
mov dword [esp + 0x14], 0xfffffc15
jmp 0x4ef5fd
cmp eax, 0xfffffc09
jne 0x4ef4f1
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x54]
mov esi, dword [esp + 0x58]
mov dword [ebp + 0x268], eax
mov eax, dword [esp + 0x68]
mov dword [ebp + 0x38], eax
mov eax, dword [esp + 0x5c]
mov dword [ebp + 0x26c], ecx
mov ecx, dword [esp + 0x60]
mov dword [ebp + 0x48], eax
mov dword [ebp + 0x240], eax
mov eax, dword [esp + 0x30]
mov dword [ebp + 0x4c], ecx
mov dword [ebp + 0x244], ecx
mov ecx, dword [esp + 0x34]
mov dword [ebp + 0x50], eax
mov dword [ebp + 0x188], eax
mov eax, dword [esp + 0x90]
mov dword [ebp + 0x40], edx
mov dword [ebp + 0x238], edx
mov dword [ebp + 0x54], ecx
mov dword [ebp + 0x18c], ecx
mov ecx, dword [esp + 0x94]
mov edx, eax
or edx, ecx
mov dword [ebp + 0x44], esi
mov dword [ebp + 0x23c], esi
je 0x4ef100
mov dword [ebp + 0x160], eax
mov dword [ebp + 0x164], ecx
mov edx, dword [ebp + 0xd0]
test edx, edx
je 0x4ef13b
mov eax, edx
lea esi, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ef110
sub eax, esi
push eax
push 0
push edx
call fcn.004948b0
mov eax, dword [ebp + 0xd0]
push eax
call fcn.004934fd
add esp, 0x10
mov dword [ebp + 0xd0], 0
mov ecx, dword [ebp + 0x10c]
mov edi, dword [esp + 0x44]
mov dword [ebp + 0xd0], edi
test ecx, ecx
je 0x4ef17f
mov eax, ecx
lea esi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4ef154
sub eax, esi
push eax
push 0
push ecx
call fcn.004948b0
mov ecx, dword [ebp + 0x10c]
push ecx
call fcn.004934fd
add esp, 0x10
mov dword [ebp + 0x10c], 0
test edi, edi
je 0x4ef194
push edi
call fcn.004b3007
add esp, 4
mov dword [ebp + 0x10c], eax
jmp 0x4ef19e
mov dword [ebp + 0x10c], 0
mov edx, dword [ebp + 0x104]
test edx, edx
je 0x4ef1db
mov eax, edx
lea esi, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ef1b0
sub eax, esi
push eax
push 0
push edx
call fcn.004948b0
mov edx, dword [ebp + 0x104]
push edx
call fcn.004934fd
add esp, 0x10
mov dword [ebp + 0x104], 0
mov edx, dword [ebp + 0x140]
test edx, edx
je 0x4ef21b
mov eax, edx
lea esi, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ef1f0
sub eax, esi
push eax
push 0
push edx
call fcn.004948b0
mov eax, dword [ebp + 0x140]
push eax
call fcn.004934fd
add esp, 0x10
mov dword [ebp + 0x140], 0
mov edi, dword [esp + 0x50]
test edi, edi
je 0x4ef24a
mov esi, 0x20
mov ecx, edi
call fcn.004de680
test eax, eax
je 0x4ef24a
push edi
mov dword [ebp + 0x104], edi
call fcn.004b3007
add esp, 4
mov dword [ebp + 0x140], eax
jmp 0x4ef258
xor edi, edi
mov dword [ebp + 0x104], edi
mov dword [ebp + 0x140], edi
mov esi, 4
lea ecx, [esp + 0xfc]
call fcn.004de680
test eax, eax
je 0x4ef2b6
lea eax, [esp + 0xfc]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ef277
sub eax, edx
cmp eax, 4
jne 0x4ef2b6
push 5
lea ecx, [esp + 0x100]
push ecx
lea edx, [ebp + 0xd4]
push edx
call fcn.00505930
push 5
lea eax, [esp + 0x10c]
push eax
lea ecx, [ebp + 0x110]
push ecx
call fcn.00505930
add esp, 0x18
jmp 0x4ef2d0
xor eax, eax
mov dword [ebp + 0xd4], eax
mov byte [ebp + 0xd8], al
mov dword [ebp + 0x110], eax
mov byte [ebp + 0x114], al
mov eax, dword [esp + 0x64]
mov esi, 0x20
lea ecx, [esp + 0x1e8]
mov dword [ebp + 0xdc], eax
mov dword [ebp + 0x118], eax
call fcn.004de680
test eax, eax
je 0x4ef342
lea eax, [esp + 0x1e8]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ef300
sub eax, edx
cmp eax, 0x20
jne 0x4ef342
push 0x21
lea edx, [esp + 0x1ec]
push edx
lea eax, [ebp + 0xe0]
push eax
call fcn.00505930
push 0x21
lea ecx, [esp + 0x1f8]
push ecx
lea edx, [ebp + 0x11c]
push edx
call fcn.00505930
add esp, 0x18
jmp 0x4ef3b0
xor eax, eax
mov dword [ebp + 0xe0], eax
mov dword [ebp + 0xe4], eax
mov dword [ebp + 0xe8], eax
mov dword [ebp + 0xec], eax
mov dword [ebp + 0xf0], eax
mov dword [ebp + 0xf4], eax
mov dword [ebp + 0xf8], eax
mov dword [ebp + 0xfc], eax
mov byte [ebp + 0x100], al
mov dword [ebp + 0x11c], eax
mov dword [ebp + 0x120], eax
mov dword [ebp + 0x124], eax
mov dword [ebp + 0x128], eax
mov dword [ebp + 0x12c], eax
mov dword [ebp + 0x130], eax
mov dword [ebp + 0x134], eax
mov dword [ebp + 0x138], eax
mov byte [ebp + 0x13c], al
mov eax, dword [esp + 0x44]
test eax, eax
je 0x4ef3bd
cmp byte [eax], 0
jne 0x4ef3c6
test edi, edi
je 0x4ef3cd
cmp byte [edi], 0
je 0x4ef3cd
mov eax, 1
jmp 0x4ef3cf
xor eax, eax
mov edi, dword [esp + 0x4c]
mov dword [ebp + 0x108], eax
mov dword [ebp + 0x144], eax
test edi, edi
je 0x4ef418
mov edx, dword [ebp + 0x2c]
test edx, edx
je 0x4ef415
mov eax, edx
lea esi, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ef3f0
sub eax, esi
push eax
push 0
push edx
call fcn.004948b0
mov eax, dword [ebp + 0x2c]
push eax
call fcn.004934fd
add esp, 0x10
mov dword [ebp + 0x2c], 0
mov dword [ebp + 0x2c], edi
mov edi, dword [esp + 0x7c]
test edi, edi
je 0x4ef465
cmp byte [edi], 0
je 0x4ef465
mov edx, dword [ebp + 0x1a8]
test edx, edx
je 0x4ef45f
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ef434
sub eax, esi
push eax
push 0
push edx
call fcn.004948b0
mov ecx, dword [ebp + 0x1a8]
push ecx
call fcn.004934fd
add esp, 0x10
mov dword [ebp + 0x1a8], 0
mov dword [ebp + 0x1a8], edi
mov edi, dword [esp + 0x78]
test edi, edi
je 0x4ef4b1
mov edx, dword [ebp + 0x210]
test edx, edx
je 0x4ef4ab
mov eax, edx
lea esi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ef480
sub eax, esi
push eax
push 0
push edx
call fcn.004948b0
mov edx, dword [ebp + 0x210]
push edx
call fcn.004934fd
add esp, 0x10
mov dword [ebp + 0x210], 0
mov dword [ebp + 0x210], edi
mov eax, dword [esp + 0x70]
test eax, eax
jl 0x4ef4bf
mov dword [ebp + 0x1ac], eax
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x74]
mov dword [ebp + 0x1b0], eax
mov eax, dword [esp + 0x6c]
mov dword [ebp + 0x1b4], ecx
mov dword [ebp + 0x1b8], edx
test eax, eax
jl 0x4ef4f1
mov dword [ebp + 0x1bc], eax
cmp dword [esp + 0x14], 0x3e8
jne 0x4ef5fd
cmp dword [esp + 0x34], 0
jg 0x4ef537
jl 0x4ef50f
cmp dword [esp + 0x30], 0
ja 0x4ef537
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x30]
push eax
push ebx
push ecx
push str.zaF_ld__d__x
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 0x10
mov dword [esp + 0x14], 0xfffffc0c
jmp 0x4ef5fd
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
mov edi, dword [esp + 0x9c]
mov esi, dword [esp + 0x98]
push edx
push eax
push edi
push esi
call fcn.0050504b
fcomp qword [0x535c58]
add esp, 0x10
fnstsw ax
test ah, 5
jp 0x4ef5a9
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
push ecx
push ebx
push edx
mov eax, edi
mov edi, dword [esp + 0xa4]
push esi
push eax
push edi
mov dword [esp + 0x2c], 0xfffffc0c
call fcn.0050504b
fstp qword [esp + 8]
add esp, 8
push esi
push edi
push str.zaC_ld__ld__.lf__d__x
lea edi, [ebp + 0x18]
call fcn.004ddcb0
add esp, 0x1c
jmp 0x4ef5fd
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x5c]
push ecx
push edx
push edi
push esi
call fcn.0050504b
fcomp qword [0x52d608]
add esp, 0x10
fnstsw ax
test ah, 0x41
jne 0x4ef5d4
mov dword [esp + 0x14], 0xfffffc0f
jmp 0x4ef5fd
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x54]
push eax
push ecx
push edi
push esi
call fcn.004dc840
fcomp qword [0x52d608]
add esp, 0x10
fnstsw ax
test ah, 0x41
jne 0x4ef5fd
mov dword [esp + 0x14], 0x3f2
mov eax, dword [esp + 0x23c]
mov edx, dword [esp + 0x14]
inc eax
mov dword [ebp + 0x24], edx
push eax
push ebp
call fcn.004edba0
add esp, 8
mov ecx, dword [esp + 0x230]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00493d56
add esp, 0x224
ret